Description
This mod was only possible with Pehkui as it was built around that mod's source code. However, this mod focuses more on interactions at varying sizes, as well as making infinitely big and small sizes somewhat playable, or at the very least usable without lagging or crashing.
THIS IS NOT COMPATIBLE WITH PEHKUI
Flan mod is required! Link: https://www.curseforge.com/minecraft/mc-mods/flan
For a version that's compatible with Pehkui, immersive portals, Origins and other SizeChanging mods that use Pehkui API, check out my new Scopic-Addon mod!
Link: https://www.curseforge.com/minecraft/mc-mods/scopic-addon
This mod focuses mostly on playing on private servers with friends, or for usage in roleplay-esque situations. Although it has been made with both servers and singleplayer survival in mind as well. The mod allows for a ton of features, most of which are completely customisable in a (hopefully) simple and digestible manner. Some parts of the Pehkui code was changed to allow for certain features, so it is not recommended to use this mod as a replacement for Pehkui in the case where you only want a resizing API, as this mod's compatibility has not been tested with any other mods that utilize the Pehkui API, so do so at your own risk.
If you have anything you want to talk to me about the mod I would also recomment doing so in the discord as I will be more active there than here on curseforge
you can send me a quick DM on discord: Sizze#3834
this project now exists for both 1.18.1 and 1.18.2, however I would strongly recommend the 1.18.1 version since the 1.18.2 version has issues that I couldn't seem to fix
Now, as for features, I'll group them into a couple of categories: "Big", "Small" and "universal". These classifications are most often just the size in relation to what you're interacting with, further explanation below:
(Newly added features)
Universal features:
-infinite scaling
Pehkui already supports growing or shrinking to the infinite, however, there were a couple of issues. at larger scales, the game would lag, and entities/players at lower scales would de-render automatically if the size difference was too large. This mod fixes both issues, making interactions at (almost) any scale possible. At larger scales, your hitbox is capped. The Maximum hitbox size is configurable in the configs but is 8 by default. This allows you to change your scale all the way to around scale 4,294,967,296 (4 billion) and all the way down to 0 (you can go negative but that's unchanged). at smaller scales the hitbox has not changed, but they will no longer de-render when too small (although they'll still become "invisible" cause they'll be smaller than a pixel, it is recommended that you use a zoom mod that lets you zoom far)
-Stepping
Entities and players 4x or smaller than another entity or player will take damage when stepped on, damage scales with scale difference
-Carrying/Throwing
You can pick up entities or players that are 4x or smaller than yourself. there are three options, if you right click normally, they will appear in your hand in front of you, if you hold them and press "J", they will end up on your shoulder. When on your shoulder you cannot place or throw them, hold shift and press "J" to put them back in your hand. You can then place them down again by right-clicking a block, in which they will appear where you clicked, alternatively you can throw them by holding shift and punching. The velocity of the throw is dependent on the size difference. If you throw an entity at another entity, both entities will take damage dependent on the velocity. You can't hold an entity/player while holding an item in your main hand. However, you can hold items if you hold an entity on your shoulder.
-Powerful zoom system
Since this mod deals with big size differences, I decided to implement a customizable zoom to the mod. Hold C to zoom, or Z to toggle zoom (so you don't have to hold the button while zooming). Arrow Up and Arrow Down lets you zoom in or out, it will say how much it's zooming over your hotbar. Arrow Left and Arrow Right will change your sensitivity while zooming. it will also say what sensitivity you have. V toggles smooth camera, if you're already zoomed then un-zoom and re-zoom to apply the effect. and Finally, the DOT key resets all the values to default.
-Cactuses
Cacti deal no damage to players scaled 4 or above, as well as no damage to players scaled 0.125 or below
-Snowballs
Throwing a snowball at an entity/player who is 8x smaller than you / the snowball, will receive slowness 3 for 10 seconds
-Throwing creepers
Throwing a creeper will make it detonate on impact
-Iron Golem Rescaling
If you right-click an iron golem who is at full health with iron, the golem will grow by 20% while consuming the iron, with no limits. You can also right-click golems with any pickaxe to shrink them by 20%, giving you 1 iron per use. This works til the golem is scaled 0.01 or lower
-Scaled Footsteps
Bigger players will make louder and deeper footsteps when walking, while tiny players will make more high pitched and quite footsteps
-Screen Shaking
This feature is turned off by default. Certain events trigger screenshakes. When a player or entity at least 8x or bigger than you walks near you, your screen will violently shake for a second. Players who use the jumping destruction will also trigger a screenshake for everyone in range, including the player jumping themselves. The screenshake is very buggy and has tons of issues that I'm aware of, so it's not recommended to use, but if you want to, you can enable it in configs under "enableShaking"
-Blowing ability
Works at all sizes on any entity that is 4x or smaller. if you're 8x or larger you will blow blocks back. The harder the block, the more difficult it is to blow. blow strenght scales. Press G while looking at a block to blow all entities within an area around that block away. This works at all scales. blowing will drain your air, and you can no longer blow when out of breath, and will have to wait for it to recover a bit. hold shift while blowing to blow away blocks. blocks will fly away at random. The hardness of the block dictates how easily it'll blow away (leaves are MUCH easier to blow away than stone for instance) this scales with your scale
-Scaled knockback
Bigger players take less knockback from smaller sources
-Hooking entities
if you're smaller than another entity, and you hook them with a fishing rod, you'll be dragged towards them if they walk too far, kinda like a leash. The smaller player will also be dragged towards the bigger entity when reeling in
-Mounting
You can mount entities and players bigger than yourself by clicking them with a string.
-Scaled loot
Larger mobs will drop more loot, and the potency of fortune increases when tiny, and decreases when big
-Climbing entities
Holding a slimeball will allow you to climb entities that are bigger than you. Additionally, you can stand on top of them. You'll retain your relative position on them as they move, but if they fall or jump, you'll fall off
-Custom carrying option
press "H" while holding an entity in hand to enable it, and sneak and press "H" to toggle back to holding in your hand.This this option allows you to fully customise the position of the passenger while customcarrying. All of it is customisable with the command in the commands section of this page.
Big features:
(WildFire FemaleGenderMod was used to make the player models look like this in images, I did not really intend to do this, but I forgot we had it installed on the server we used for screenshots)
-Big players have the ability to destroy the land around them. The destruction is made extra chaotic by making affected blocks fly away (see pictures below). There are currently 5 "Destruction" options, all of which are toggleable, and some of which are customisable:
Growth Destruction
This occurs when a player grows in an area that doesn't fit their new size. There's a natural cap at 32 as higher scales are laggier, however, this can be changed in the config.

Jump Destruction
Occurs when a player at scale 4 or higher holds shift and then jumps. They will create a crater in the ground below them with debris flying around as well as sending surrounding entities flying. Size of destruction depends on the player's scale capped at 32


Run and/or walk Destruction
this one is disabled by default. You can enable it by commands which I will explain further down the page. Run makes it so players at scale 16 or above can run through blocks, making them fly away, but they have to sprint, walk does the same, but only around the leg areas, but without the need to sprint. you can enable both simultaneously, and you will be able to walk through any destructible block with ease.

Punch Destruction
This is also disabled by default. Players who enable this while at scale 4 or above can hold shift while clicking a block to cause some havoc. The size of the area affected scales with your explosion size/base size, but it can also be customized with commands!

-Arrow destruction
Firing an arrow while big will destroy the area the arrow lands at
-Picking Up Blocks
Big players can pick up and hold blocks as well as entities (further explained in universal). hold shift and right click a block to pick it up, but be careful since you can't place it down after picking it up. After a block has been picked up, you can throw it, it deals damage to entities it collides with, and creates an explosion on impact if thrown hard enough.
-Item Pickup Restrictions
Big players above scale 8 cannot pick up items by walking over them. To pick up an Item at this size you have to right click the ground while in range of the Item. This will pick up all items in the area per click. Alternatively, you an hold an empty bucket in either hand, in which items will be picked up as normal.
-Armor Restrictions
You cannot wear armor when at scale 8 or above. If you grow to or past scale 8 while wearing armor, the armor will simply fall off you. (This doesn't have a toggleable config option yet, but I will add it soon)
-Compression
A small easter egg: if you hold a stack of coal while at scale 32 or above, and right-click, you will crush the coal into 1 diamond
-AOE Attack Damage
Players scaled 4x or above will deal AOE damage when hitting entities. The damage is equal to your normal attack damage, and the AOE range increases by size
-Ability to harvest blocks with certain mining levels at bigger sizes
Basically, when you're bigger, your hand acts like a pickaxe, the pickaxe types go like this:
size 4 = wood, size 9 = stone, size 16 = iron, size 25 = diamond
Small features:
-Gliding
Holding a piece of paper or map in either hands while in the air at scale 0.25 or lower will make you fall slower, you can hold shift to fall down faster
-Climbing
Tiny players scaled 0.25 or lower can naturally climb any block that's harvestable by shovel, they can also climb any block in the game if they hold a slimeball
-Grappling Hook
Tiny players scaled 0.125 or lower can grapple with a fishing rod. When the bobber lands, you can reel it in to launch yourself in its direction
-Consuming Sugar
Consuming sugar while scale 0.25 or below, will grant you Haste and Speed for 20 seconds, the potency depends on your scale.
-Riding Entities
You can mount entities who are at least 4x bigger than yourself by clicking them with a string. Riding a bat or parrot will let you control them. The bat flies faster than the parrot. You can also mount spiders/cave spiders and tamed dogs. The spiders can't jump, but can climb walls. Dogs behave like a normal mount
-Redstone
Players scaled 0.125 or below won't trigger tripwires or pressure plates. they also can't interact with levers, buttons or doors. Holding a stick will let you interact with the latter group
-Rain
If you're scaled 0.125 or below, you'll drown in rain, make sure to stand under a block to prevent this. You can also hold a lily pad, or stand directly underneath an entity at least 4x bigger than yourself
-Poppies
Poppies damage and slows you when you're tiny
-Lilypad boats
Holding a lilypad while touching water will let you use it like a boat
-Heatsources and paper
Flying near a heatsource with paper will give you upwards momentum. warmer sources give more momentum
-Riding fireworks
spawning a firework rocket on your feet while tiny will make you ride it as it flies up
-Torch, lever and sign collision
Tinies can stand on top of these three blocks as if it was normal ground. Standing on top of a torch will light you on fire. Additionally, you can climb torches as if it was a normal block
Commands:
This mod adds 3 commands
/ServerSize is just a command that allows you to change your base scale without permissions for servers.
The next command is a lot more complicated, so I will try my best to explain in depth
everything done with this command (except the food section) is saved upon respawn and relog!
/rp is a command that mainly aims for customisation and toggling features
/rp destruction - lets you enable / disable certain destruction types. if you do /rp destruction punch {enable/disable} / {(power) (chance)} you can choose to follow up with the power of the puch as well as the percentage of blocks affected that will turn into debree.
Example: /rp destruction 5 50 will make your punches as powerful as an explosion with ExplosionPower 5, with half the blocks that were "exploded" being converted into flying blocks
/rp random (add/set/multiply) (min) (max) - this will randomly add/set/multiply a random number between min and max to your scale
Example: /rp random set 0.1 5 would set my scale to a random number between 0.1 and 5
/rp type (Additive/Multiplicative) - Changes whether all the scaled operations that uses the rp command is done additively or multiplicatively. This is set to multiplicative by default,
/rp spurt {enable/disable} / {(min) (max) (chance) (interval)} - this does a similar thing to /rp random. Your size will be randomly multiplied/added (depending on what you've set the type to) with a random number between the min and max value with a chance percentage chance of success for every interval ticks that pass. can be disabled and re-enabled by /rp spurt (enable/disable).
Example: /rp spurt 1.1 2 50 200 this would try to multiply my scale by a value between 1.1 and 2 with a 50% chance of success. and it will attempt this every 200 ticks (10 seconds)
It can also be used to make a consistent sizechange over time
Example: /rp spurt 0.9 0.9 100 1000 will multiply your scale by a number between 0.9 and 0.9 (which will always be 0.9) with a 100% success rate, every 1000 ticks (50 seconds)
/rp set (FoodItem) (Value) - This command makes it so that if you consume the inputted food item, it will multiply/add (depending on rp type) the inputted value to your scale. Each food Item holds and stores their own value, and the values reset each time you log out. But as long as you don't log out, you won't need to constantly apply a value to a food item every time you eat
Example: /rp set minecraft:bread 2 this would double my size every time I ate bread, if I then type /rp set minecraft:apple 0.5 then my scale would halve every time I ate an apple, but eating a bread would still double my size
/rp remove (FoodItem) - Removes the value of a selected food Item, this is necessary to do in order to change a FoodItem's value. Keep in mind that after removing the value, the food might still change your size the next time you eat. I am working on a fix for this
/rp get (FoodItem) - Tells you the value stored for the inputted FoodItem
/rp CustomCarry setOffset {offsetDistance} {offsetRotation} {offsetHeight} {InvisiblePassenger} - This command lets you customise the position of a passenger when customCarrying. per default, a passenger will appear around the centre of your hitbox
offsetDistance changes how far away from your body the passenger is
offsetRotation changes how they're rotated around you. Imagine a top-down view of yourself holding them. it will rotate them ina circle around you. so 0 = in front, 180 = behind, 90 = left, 270/-90 = right
offsetheight simply changes how far up they'e positioned
InvisiblePassenger toggles whether or not they should be visible while customcarrying
a few examples:
/rp customCarry setOffset 0.35 -90 1.75 false - puts them on your right shoulder
/rp customCarry setOffset 0 0 3 false - puts them on top of your head
/rp customCarry setOffset 0 0 1 true - puts them safely inside your body while invisible
/rpevents
this new command is meant to cover events that could happen during gameplay. Active events are the ones that require the player to do something, Passive ones happens passively during gameplay. My thought is to fill it with events as I update the mod further, adding in new events that may or may not be useful or sensible. It's kind of like a feature spam folder, Anyhow there are currently only 2 events:
/rpevents Active Siphon toggle - Enables / disables the Siphoning event. Unlike with the RP command, Activated events remain active even after you log off. When active, you will steal the size of whatever you hit whenever you hit it. The amount of size stolen depends on the damage dealt to the target, as well as your chosen multiplier.
/rpevents Active Siphon set (multiplier) - Allows you to set a custom multiplier to the Siphon event. say you want the siphoning effect to be 100x stronger than normal?
then you can do /rpevents Active Siphon set 100
/rpevents Active Kill {toggle / set} - Works exactly the same way as Siphon, except it is triggered every time you kill something. The amount of sizechange is customisable and can even be negative to shrink you
ex: /rpevents Active Kill set 0.5 - grows you by 0.5 every time you kill something
/rpevents Active BlockBreak (Same as the food command) - it's in the same command line as Siphon. "BlockBreak". the subcommand under BlockBreak work like the food rescaling system. "AllBlocks" enables rescaling on every block with the specified value, "clearblocks" clears all blocks and values, "operation" lets you toggle between additive and multiplicative, "removeblock" removes a specific block and its value, "addblock" adds a specific block under a specified value
ex: /rpevents Active BlockBreak AllBlocks 0.1 - grows you by 0.1 every time you break a block
and finally /AdminRp - Allows admins or command blocks to execute /rp and /rpevents commands on other player's behalf
Items:
Empty/Filled syringe Right click an entity/player with an empty syringe to steal half their size, the value stolen will be stored into a filled syringe. if you right click with the filled syringe, you will grow by an amount equal to the stored value. You can also hold shift and right click the empty syringe to steal your own size, as well as shift and right click others to grow them.
Potion of small just a standard item, consuming it will put you at a random size between 0 and 1
Potion of big works the opposite of the potion of small, making you a random size between 1 and 100
Empty Keg Only used to craft green and red keg
Green keg works exactly like the potion of small, but with smaller sizes, making you a random size between 0 and 0.01
Red Keg like the potion of big, but between sizes 1 and 1000 instead.
Delicious sandwich consumes the entire stack when eaten, and grows you by an amount equal to the stack count
Example: if you hold 8 sandwiches and eat it, then you will grow by 8, if you hold 64 you'll grow by 64 etc
Powerful grape this one is unobtainable in survival, and is mostly a joke item. You have to make sure you can handle the grape's power before consumption. if you're below scale 256 when eating it, you will immediately die from it's raw power. However, if you're bigger than 256, then you'll grow to the biggest possible size. (DO NOT CHANGE BACK TO 1 WHEN YOU'RE THIS BIG, you have to slowly shrink down, like shrink to 100,000 then 1000 and then 1)
Neutralising chocolate - this item puts you back at scale 1 when eaten. Can be crafted with 1 cocoa bean + 2 sugar or 1 cookie + 2 sugar both in the shape of the cookie recipe
Leaf Armor and Leaf Item - Leaf Item drops in batches between 1-3 every time a player at or below scale 0.25 breaks leaves (excluding spruce leaves). leaf armor is made with leaf items, and will deplete in durability rapidly if worn at at scales above 0.25
Hang glider
this item can only be used when tiny. simply hold it while in the air, and you'll start gliding. it travels fast, but descends faster than holding paper. you will automatically travel in the direction you're looking.
-Sleeping bag - simply right click this while small to sleep like in a bed
Configs and Server stuff
The configs contain all the options from Pehkui for mc version 1.18.1, but there's a few extra added that I wanna explain
RpCommandPermissionLevel decides what permission level you need to use the rp command, where 0 means anyone can use, and 4 means only admins can use
maxExplosionSize This decides the max value you can choose for the punch destruction
allow{DestructionType}Destruction these lets you enable or disable destruction types globally. on singleplayer you can't use them if disabled, and on multiplayer no-one can use them if the server disables them
enableDestruction enables/disables destruction altogether, works like the option above
max/min Scale sets a minimum and maximum scale, mostly useful for servers. It will be impossible to surpass these scales, even with Items. Unless you're written as an exemption
playerMaxScaleException[] write the username of a player you want to be exempt from the min/max scale rule. write their username like this: "christiantiana" and make sure to add a comma behind if you want to add more people
Example: playerMaxScaleException["christiantiana", "Notch"] this would make me and notch exempt from the min and max scale config option
maxGrowthDestructionScaleServer this lets server owners decide the maximum size for growth destruction to take place, if someone grows past this value they won't destroy anything
maximumHitboxSize let's you chose the max player hitbox size. lower hitbox sizes means less lag, but is less intuitive to play with. All features work independent on hitbox sizes
maxScaledExplosionSize lets you choose how big an explosion caused by punch destruction can be in total after all calculations are done
maxFlyingBlockSpawnChance lets you choose the percentage of blocks destroyed that are converted into flying blocks, lower number means less lag, but also less debris. this config option works uniform across all destruction types, so making it 0 will mean that no destruction type will ever create debris
scaledFlyingBlockSpawnChance makes the amount of flying blocks converted when destroyed scale inversely to the player's scale to reduce lag, works across all destruction types
balancedMotionAndReach halves big players motion after scale 8, and increases small players motion. Also makes it so that small players can always reach at least 1 block
limitArmor - true by default, toggles the limit for armor at large scales
Also added new config options for the PermissionLevel for both the ServerSize command and RpEvents command
AD
Become Premium to remove Ads!
What means Verified?
-
Compatibility: The mod should be compatible with the latest version of Minecraft and be clearly labeled with its supported versions.
-
Functionality: The mod should work as advertised and not cause any game-breaking bugs or crashes.
-
Security: The mod should not contain any malicious code or attempts to steal personal information.
-
Performance: The mod should not cause a significant decrease in the game's performance, such as by causing lag or reducing frame rates.
-
Originality: The mod should be original and not a copy of someone else's work.
-
Up-to-date: The mod should be regularly updated to fix bugs, improve performance, and maintain compatibility with the latest version of Minecraft.
-
Support: The mod should have an active developer who provides support and troubleshooting assistance to users.
-
License: The mod should be released under a clear and open source license that allows others to use, modify, and redistribute the code.
-
Documentation: The mod should come with clear and detailed documentation on how to install and use it.
AD
Become Premium to remove Ads!
How to Install
Download Forge & Java
Download Forge from the offical Site or here. If you dont have Java installed then install it now from here. After Downloading Forge you can run the file with Java.
Prepare
Lounch Minecraft and select your Forge istallation as Version this will create a Folder called Mods.
Add Mods
Type Win+R and type %appdata% and open the .minecraft Folder. There will you find your Folder called Mods. Place all Mods you want to play in this Folder
Enjoy
You are now Ready. Re-start your Game and start Playing.