Documentation still wip
Changelog: http://psi.vazkii.us/changelog.php#r1.2-80
Added Block Operators(Block Mining Level, Block Side Solidity, Block Comparator Strength, Block Hardness, Block Light)(Kamefrede)
Added Caster Selectors(Success Counter, Caster Battery, Caster Energy)(Kamefrede)
Added Constant: Tau(Kamefrede)
Added Cross Connectors(Kamefrede)
Added DataGenerators(Williewillus & Hubry)
Added List operators(List Concatenation, List Size, List Exclusion, List Intersection, Indexed Element)(Kamefrede)
Added Operator: Closest To Line(Kamefrede)
Added Operator: Entity Health(Kamefede)
Added Operator: Entity Raycast(Kamefrede)
Added Operator: Gamma Function(Kamefrede)
Added Operator: Planar Normal Vector(Kamefrede)
Added Operator: Root(Kamefrede)
Added Operator: Signum(Kamefrede)
Added Operator: Vector Absolute(Kamefrede)
Added Operator: Vector Rotate(Kamefrede)
Added Selector: Elytra Deployed(Dudblockman & Kamefrede)
Added Trick: Break Loop(Kamefrede)
Added Trick: Change Slot (Inventory)(Kamefrede)
Added Trick: Collapse Block Sequence(Kamefrede)
Added Trick: Detonate and the Trigger Sensor(Kamefrede)
Added Trick: Emit Note(Kamefrede)
Added Trick: Move Block Sequence(Kamefrede)
Added Trick: Particle Trail(Kamefrede)
Added Trick: Smelt Block Sequence(Kamefrede)
Added Trick: Spamless Debug(Kamefrede)
Added Trick: Till and Trick: Till Sequence(Kamefrede)
Added Vector Suppressor(Kamefrede)
Added a secret(Kamefrede)
Added an empty colorizer(Kamefrede)
Added brand new book and WIP tutorials(Alwinfy)
Added fancy new contributor perk :) (Kamefrede)
Added forge event calls to prevent griefing with Psi.
Added more Nearby Selectors(Nearby Players, Nearby Glowing, Nearby Vehicles, Nearby Falling Blocks)(Kamefrede)
Added new way of adding CAD models and the way they are registered(Williewillus)
Added tags for some of our materials(Hubry & Kamefrede)
Added: Trick Night Vision(Kamefrede)
Atlased all the pieces, greatly improving performance(Williewillus)
Better spell sharing features(Warning when you try to import from newer versions or when the spell contains pieces from other mods which are not currently present; Screenshots now indicate which additional mods are needed)(Kamefrede)
Blocks and items got retextured(Saiko-Chan)
Changed block sequence tricks to be N-Blockspaces now(Kamefrede)
Conjured blocks and lights now color beacons(Kamefrede)
Convert custom recipe types to Serializers(Hubry)
Dependency on ARL was removed(Williewillus & Kamefrede)
Fix arm swinging when using CAD(Kamefrede)
Fixed CAD being able to be harvest blocks that require specialized tools(BlueAgent)
Fixed CAD lighting on GUIs(Kamefrede)
Fixed Charge spell bullets visually acting as Grenade bullets(Kamefrede)
Fixed Exosuit Controller in offhand being able to open radial menu but not selecting items(Dudblockman)
Fixed Eye of Ender not being counted as a projectile(Kamefrede)
Fixed Integer Divide resulting in incorrect values when value exceeds a 32-bit integer(Dudblockman)
Fixed a bug where Nearby Selectors could lag out the server(Dudblockman)
Fixed a vazkii misspelling of Trigonometry(Kamefrede)
Fixed a zh_tw translation error(Kamefrede)
Fixed an issue regarding Selector: Block Broken(Kamefrede)
Fixed blocks that would instant break not breaking(BlueAgent)
Fixed bug where CAD couldn't harvest materials with no harvest tool(BlueAgent)
Fixed connectors sometimes forgetting they are connected(Kamefrede)
Fixed memory leak in the armor code(Kamefrede)
Fixed not being able to select negative numbers in the search bar(Kamefrede)
Fixed pressing enter on a spell programmer with no search results crashing(Kamefrede)
Fixed rare NullPointerExceptions with a Spell circle(Kamefrede)
Fixed shaders(Kamefrede)
Fixed some pieces not showing up in the search menu(Kamefrede)
Fixed some quirks about the sparkles and made them more lag friendly(Kamefrede)
Fixed spectator related bugs(Kamefrede)
Fixed spell grenades getting stuck on one axis(Williewillus)
Fixed using GlStateManager over glPopAttrib / glPushAttrib(UltraHex)
Made Entity Lists be deterministic(Alwinfy)
Mine bullet changes(Dudblockman)
Motion spells should be more bearable now but they aren't perfect still(Kamefrede)
Nearby Charges is now Nearby Charge Count and returns the number of nearby charges(Dudblockman)
Operator: Divide and Integer Divide now have an optional 3rd input(Kamefrede)
Operator: List Add now has the list an optional input, allowing for empty lists(Kamefrede)
Operator: Power can now take non-integer values(Kamefrede)
Projectiles now have their motion returned when getting their look(Kamefrede)
Refined programmer shape to fix lighting bugs(Williewillus)
Removed leveling in favor of a more in-depth optional tutorial(Kamefrede & Alwinfy)
Removed the level up prompt(Kamefrede)
Search is now an AND search instead of an OR search(Kamefrede)
Selectors now have an optional range and position values, defaulting to the caster's position and a radius of 32(Dudblockman & Kamefrede)
Sequence tricks have been rebalanced in cost(Kamefrede, Dudblockman & Phanta)
Small balance changes to stat values(Kamefrede)
Trick: Break Block now costs 50 psi(Kamefrede, Dudblockman & Phanta)
Trick: Break Block now drops XP and is affected by tool enchantments(BlueAgent)
Trick: Place Block now has an optional direction value(Kamefrede)
Updated zh_cn(KaedeLen)
Vector3s have more precision when being debugged(Kamefrede)
[API] Added a spell grid component and a WIP template as well as a Spell Piece processor and a Spell Piece Template(Hubry)
[API] Added helpers to aid addon developers in making spellpieces(Kamefrede)
[API] Infusion crafting is now JSON based, meaning new recipes can be added and tweaked(Hubry)
[API] Migrated old wrapper interfaces to capabilities(Hubry)
[API]Added a parameter type to SpellParams(Williewillus)
[API]Added cancellable events for drawing of HUD elements(Kamefrede)
[API]Made things in general be more null-safe(Williewillus)
[API]Replace SpellPiece.Null with java.lang.Void(Williewillus)
Added new warning messag from when spells are imported from a version newer than the current one (Kamefrede)
Fixed compatibility with 1.15 spell json format (Kamefrede)
Fixed the CAD being able to break any block type (BlueAgent)
Make experience drop when breaking blocks (BlueAgent)
Fixed instant break blocks not breaking when punching with a CAD (BlueAgent)
Fix spell entities triggering pressure plates.
Detonators now actually detonate in a sphere.
Psimetal tools and armor no longer break. Instead, they just stop working at 0 durability.
Psi tool regen is a lot faster, but is more exploitable in battle.
Fix volatile CAD data (time, vector memory, battery) disappearing occasionally.
Detonators now detonate in a sphere.
Entire spells can now be rotated and mirrored with a single keybind. Glorious!
Infusion tricks now can infuse all of the materials up to their tier. Ebony and Ivory is slightly more expensive to accommodate this.
Search is now sorted by relevance, instead of just by what order things are registered in.
Infusion tricks now act in a sphere, instead of a cube.
Fix odd motion behavior when adding motion to a player or an entity a player is controlling.
Blink tricks now preserve momentum.
Fix a crash when particles were size zero.
[API] Capabilities are now the method by which ISocketable, IShowPsiBar, ISpellSettable, ISpellContainer, and ISpellImmune are handled.
[API] Added PsiRegenEvent
Added a special case regarding batteries that have -1 overflow (WireSegal)
CADs can no longer be used as literal pickaxes (Laike-Endaril)
Cleaned up unnecessary remote checks (WireSegal)
Fixed a bug regarding loopcasting visuals (WireSegal)
Fixed a bug regarding the loopcast sync packet only working on the client's side (WireSegal)
Fixed eidos being "jittery" and causing "wrong movement issues" (WireSegal)
Loopcasts now end even when switching between identical bullets (WireSegal)
Removed unnecessary colour allocations (WireSegal)
Restricted spell casting to serverside only. (WireSegal)
Trick: Break Block now accounts for many more edge cases regarding the mining level (Laike-Endaril)
[API] Added generic redirection
[API] Move saved vectors to CAD data instead of Player data (WireSegal)
Nice.
Added new commands: /psi-learn and /psi-unlearn (WireSegal)
Changed CAD logic a bit to allow addon components to have negative values. (WireSegal)
Fixed a generic crash. (WireSegal)
Fixed the tutorial not giving you level points properly. (WireSegal)
Made the mapping for the missing conjured block be ignored. (WireSegal)
Fixed a crash on world load. (WireSegal)
Fixed a crash with Terraqueous. (WireSegal)
Fixed tutorial data not loading prperly. Players who were missing points will get them back. (WireSegal)
Optimized the spell circle render. (WireSegal)
[API] Allow items other than CADs to loopcast. (WireSegal)
Overhaul the internals of the CAD Assembler to not be 1.8 era garbagio. (WireSegal)
Fix CAD items desynchronizing. (WireSegal)
Fix the wrong break stats being used when you're not holding the item casting the spell. (WireSegal)
Fix *the* CME, an issue which has been affecting addon developers since the beginning of Psi. (WireSegal)
Allow any End dimension to craft ebony and ivory. (WireSegal)
Optimize conjured blocks extremely. (WireSegal)
Fix some stray shadows in piece textures. (WireSegal)
[API] Added AssembleCADEvent. (WireSegal)
[API] Added IShowPsiBar. (WireSegal)
[API] Fix Kamefrede's changes referencing non-API code from the API package. (WireSegal)
[API] Added CADStatEvent. (WireSegal)
Fixed Bright Psimetal Plates not being localized. (Kamefrede)
Fixed Operator: Entity Motion returning the wrong magnitude for players. (Kamefrede)
Fixed some blocks not having creative tabs. (Kamefrede)
[API] Added CADTakeEvent and PostCADCraftEvent. (Kamefrede)
[API] Changed how ISocketable accepts bullets. (Kamefrede)
添加了额外的预防措施来防止你的PSI溢出。如果你这样做,则你只能在能量回满后释放一次法术。
添加了使用TAB确认要放入网络的功能块
修复了一个我也不知道是因为什么造成的崩溃。
修复了术士子弹碰撞无效环境产生的崩溃 (Terrana)
修复了因为加载空世界而产生的崩溃
修复了因为功能块用连接符指向自己产生的崩溃
修复了因为选择符: 时空变更记录 使用0秒时产生的崩溃
修复了构建的方块会和光线连接
修复了冶炼会同时冶炼物品和方块
修复了构筑的光线会有错误的碰撞箱 (juliand665)
修复了循环子弹会错误延迟第一和第二次
修复了psi在服务器构建术式时有时会使用错误的服务器组件
修复了psi工具没有合适的工具类(明明就是你偷懒了吧大叔)
修复了选择符: 方块存在不返还1
修正了一些拼写错误 (sjaak31367, mwnDK1402)
修复了术式子弹和CAD不会在创造搜索显示
修复了聊天时会触发psi的热键
修复了新的更新网站不支持输入文本插入
修复了术式引爆器和一大堆其他玩意在任何方向上都不工作
修复了启动式:附加运动
修复了启动式:移动方块没有方块破坏事件 (mcenderdragon)
让施法环免疫伤害使得它不会在你身边闪烁
移除了闪现其他玩家的能力
取消了PSI能量和等级的关系,现在人人都有5000PSI
CAD现在将会有一个短暂的冷却在它被编写台变更后以防止误触
启动式:洪流现在将不会在一格下放水
在盔甲上使用选择符: 循环施法指针现在将会返回盔甲释放该法术的次数
[API] 添加了施放法术事件
[API]添加了 添加自定义信息到玩家信息中
[API] 版本号现在为7
修复了使用启动式放置方块引起的错误
Fixed a dupe bug with block breaking tricks and blocks whose drops are derived from Tile Entities.
Fixed a logic flaw with Operator: Max (Tekner)
Fixed backwards compatibility with pre 1.12 spell strings.
Fixed Selector: Nearby Smeltables not selecting only smeltables. (anexusarchon)
将核心移动到AutoRegLIB,现在它是PSI的前置
Block interaction tricks now check against world spawn protection to prevent it from being broken.
Fixed a crash with projectile bullets.
Fixed a mistake in the relative focus section.
Fixed CAD harvest level not being checked properly.
The explode trick now has a lower bound on cost and potency.
升级至1.9.4
添加了一个配置可以选择在玩家psi能量已满且没有手持psi物品时隐藏能量条
更换了术式编写台图标
修复了一个在清理玩家数据是引起的崩溃
Fixed a dupe with some some blocks (like skulls and potentially other metadata related blocks like botania flowers) and block breaking tricks.(我看不懂)
修复了启动式:破坏方块可以破坏流体
修复了火球不被选择符:附近投射物认为是对象
修复了如果你把PSI HUD绑定到鼠标键引起的崩溃,还添加了更换按键引导
修复了PSI金属铲子不能做土路
修复了启动式:附加运动会移动尸体,因为它延迟2刻而不是1刻。
修复了上下运动不被认定为移动
你现在需要SHIFT+右键来输入术式
一个向量尺在没有选取源方块和目标方块时,现在将输出源方块坐标而不是(0, 0, 0).
为程序员添加了一个GUI坐标指示器.
添加了替换CAD着色剂的合成表(yrsegal)
添加了一个二级运算符组,包括 平方, 立方, 幂运算, 平方根,对数 , 向上取整, 向下取整,四舍五入和常量:e.
在CAD装配台中添加了装备槽.
添加了检测&聚焦类. 一个选择符会返回方块存在和它的硬度, 另一个选择符会返回物品栏某格中物品堆叠的数量. 还有一个启动式可以更换焦点槽位.
添加了一个快捷键用来把截图上传到imgur(Ctrl-Shift-Alt-G)或者在reddit上分享它 (Ctrl-Shift-Alt-R).
添加了内存管理类用于允许魔法式把向量储存在CAD中.
添加了选择符:时空变更记录, 输出X tick前玩家的坐标.
添加了给魔法式写注释的能力(Ctrl+D).
添加了用Alt查看法术功能并且不需要鼠标悬停的功能
Boss们现在免疫魔法.
降低了T2和T3 CAD核心的统计数据(?)
修复了某些情况下(懒得翻译)法术会计算两次溢出,导致你可以造出几乎无消耗而且滑稽且强大的法术
修复了术式编写台那些没有被注册的按键(比如退格)(yrsegal)
修复了PSI护腿装备法术时会出现奇怪情况
Fixed tools not being able to break some things they should. (yrsegal)
Fixed Trick: Smelt Item being able to dupe items if multiple are used in one cast. (yrsegal)
Increased level cap to 28. The player's Psi energy is still capped at 5000, so there's a "soft cap" of 25. When you reach that level you get a message telling you about it.
Made Add Motion a bit more expensive, because people keep finding exploits with it.
Moved Min/Max operators to the new Secondary Operators group.
Optimized spell JSON output. Exported spell JSON is now a lot smaller. Old ones will still work, but the new format won't work on older versions.
Runtime spell errors now come with information on where the error happened in the spell.
Trick: Add Motion now needs to propel you upwards to negate fall damage again. Basically the same as before.
Added "Selector: Nearby Smeltables" to Smeltery.
Added the ability search for "_(name)" or "(name)_" on the Spell Programmer to find pieces that end with or begin with the name, respectively.
Added the Vector Ruler and "Selector: Ruler Vector", it allows you to define vectors in world. Check out the new (last) paragraph of Alternative Casting, because I couldn't find a better place to sneak it in.
Fixed a crash if you go below Y=0 or above Y=255.
Fixed Block Conjuration tricks using seconds instead of ticks.
Fixed Trick: Move Block being able to move Bedrock.
Fixed Trick: Smelt Item eating up items.
Rebalanced the stats for Trick: Smelt Item.
The Backspace key can now be used instead of the Delete key on the Spell Programmer.
The piece you have selected in the programmer GUI will now show up at the top.
Tweaked icons, again.
Tweaked the "you can only have one CAD" message.
Added an indicator to the tooltip of any spell pieces added by potential addons.
Added Block Conjuration tricks: Conjure Block, Conjure Light, Conjure Block Sequence.
Added Flow Control pieces: Sleep, Die, Evaluate, Sneak Status and Constant Wrapper. Also includes Min/Max operators.
Added Operator: Focused Entity, which lets you get the entity an entity is looking at.
Added Smeltery tricks: Smelt Item and Smelt Block.
Added the Psimetal Exosuit armorset, Exosuit Controller, Exosuit Sensors and the Exosuit Casting group.
Added Trignometry operators, Pi, and Dot Product.
Added two new spell bullets: Charge and Mine. Added a Spell Detonator item for the Charge Bullet.
Capped the amount of Psi you can have to 5000. If you go above level 25 you'll still have 5000. Furthermore the maximum regen you can have is 25 Psi per tick.
Fixed Break Block tricks breaking liquids.
Fixed Constant: Number pieces crashing the game if a spell is imported with invalid json.
Fixed Eidos spells messing up if you die in the middle of their execution.
Fixed null entities sometimes getting picked up by selectors somehow and crashing the game. I think.
Fixed setting the Psi Master keybind to a mouse button crashing the game in the bullet selection radial menu.
Fixed tools desyncing on levelup.
Fixed Trick: Torrent being able to place water in the nether.
Fixed tricks that place blocks not updating the inventory stacks properly in the client.
Fixed white lines in the CAD models.
Improved UX for the Spell Programmer:
Ctrl+arrow keys shifts the spell around.
Ctrl-C, Ctrl-X and Ctrl-V work as Copy/Cut/Paste.
Ctrl-Z and Ctrl-Y work as Undo/Redo.
Enter can now open the piece selection panel. If you're in the selection panel and have only one visible piece (because of searching), you can use Enter to put it in the board.
If you have the piece selection panel open, you can use Esc to close it instead of closing the whole interface.
Number keys + arrow keys let you change the values of spell parameters using your keyboard. Double tap the same key to disable a parameter (if available).
Searching for a number in the piece selection panel allows you to place the respective Constant: Number piece directly from there.
Spell name field is no longer force selected (no more v spam for direwolf :<).
Tab changes your cursor between the text box and the spell grid.
The arrow keys can be used to change the selected position.
You can search for "in:(type)" or "out:(type)" to get pieces that take a specific data type as input or have it as output.
(If you're on Mac, use Cmd instead of Ctrl).
Loopcast and Circle Spell Bullets can no longer be put on anything that isn't a CAD.
Made Trick: Strength more expensive. Same curve as Regeneration and Resistance.
Moved Eidos Manipulation to level 24 to accomodate Exosuit Casting.
Projectiles now remember the context of when they were created (by a tool), so pieces like Selector: Block Broken will work on non Normal bullets.
Psimetal tools now only regen if you're above 50% Psi.
Raised level cap to 25.
Removed the "Psi Beta | Not Final" indicator from GUIs. The mod is still beta, but this doesn't need to be there any more as it's not as early.
Rewrote Alternative Casting a bit to accomodate for the new bullets.
Selector: Attack Target now also works with Projectile Spell Bullets and returns the entity the projectile collided against.
The parameters for Operator: Vector Construct are now all optional. Any non set values default to 0.
Tools can also be right clicked on a Spell Programmer to set the bullet in them, similarly to a CAD.
Tweaked more spell piece icons.
Tweaked the texture for the Introduction GUI.
When you select an item with Spell Bullets, the type of bullet is now displayed above the name alongside with the spell's name.
You can now move, sprint, sneak and jump while in the bullet selection radial menu.
Added the update system from Botania. Puns included!
Fixed a dupe when cloning Spell Bullets into Spell Drives.
Fixed Eidos Anchor ignoring your look.
Fixed Eidos spells not working when the player is mounted.
Fixed the Black CAD colorizer having no recipe.
Fixed Trick: Add Motion being weird with negative directions.
Rebalanced the cost of Trick: Add Motion.
Right clicking a CAD onto a Spell Programmer sets the spell in the current selected bullet to be the spell in the programmer.
Trick: Blink no longer works downwards so it can't push you into blocks at your level if you look just slightly downwards.
Fixed a crash with Operator: Closest to Point.
Fixed a crash with Psimetal tools when using break block tricks.
Fixed a Spell Bullet dupe by placing a tool in the slot of the CAD when the CAD has bullets.
Fixed player data not saving after a piece group is selected and only when it's fulfilled and the player levels up.
Fixed Selector: Block Broken not working if the player is standing at the maximum range that they can break blocks.
Fixed the error for two parameters sharing a side not being localized properly.
Fixed the Psimetal Sword not regenerating with Psi.
Fixed Trick: Place Block placing blocks on the client when it shouldn't.
Psi material storage blocks are now registered in the Ore Dictionary. (VapourDrive)
Psionic Overflow now deals 5x less damage.
Spells in Spell Bullets can now be copied onto Spell Drives.
The "Spell is Unnamed" error now has the lowest priority rather than the second highest.
The Psi bar now scales down to a non crazy value if your scale factor is too high. There's a config for this.
Trick: Add Motion now negates fall damage if the resulting motion is positive. Furthermore, multiple casts of Trick: Add Motion can not be stacked to create ridiculous speeds.
Fixed a crash in the Programmer GUI.
Fixed a crash when casting a spell.
Fixed a crash when firing a Projectile bullet through a portal. (Thog)
Fixed the creative CAD not having its colorizer piece tinted
If you have multiple CADs you now get a chat message alerting you you're messing up.
Operator: Entity Motion now tries to approximate player motion from the player's position, since client input doesn't reflect on the motion values.
Spell stats can no longer be overloaded to make the cost and potency negative.
Trick: Debug's Number parameter now takes a Number rather than a Number Constant.
Using /give to give yourself a CAD will no longer crash the game.
Addded Positive Effects and Negative Effects as new groups containing a bunch of Tricks.
Added Eidos spells, Eidos Reversal and Eidos Anchor.
Added Grenade Spell Bullets and changed the recipe for Circle Spell Bullets to fit them.
Added Operators to Add/Remove an entity to/from a list to Entities 101.
CADs now detect fake players and refuse to work on them.
Changed the projectile spell bullet's "Time Alive" value to be persistent and synced.
Fixed parameter arrows not rendering properly when a piece has errored.
Improved Psimetal tool regeneration to not be synced with world time and only work when the tool isn't equipped.
Made Trick: Explode a bit (lot) more expensive.
Tweaked some text in Numbers 101 to be more obvious.
Updated the model for the Gold CAD. More models coming soon(tm).
Addded spectator mode to the Spell Programmer.
Added a "Spell is Unnamed" compilation error. Previously trying to put an unnamed spell into a bullet would just not do anything.
Added a Random integer operator.
Added Elemental Arts with 4 tricks.
Added Greater Infusion and Ebony&Ivory. T3 CAD components are now craftable.
Added Selector: Nearby Projectiles to Entities 101.
Added Tool Casting and a Psimetal toolset to use with it.
Fixed a crash with Trick: Blink on an entity that techncailly doesn't have a look vector.
Fixed compressed blocks making 1 item instead of 9 when de-compressed.
Fixed Spell Bullets not being able to set a spell from a programmer being used by someone else.
Fixed the Infinite Loop error not showing up properly.
Fixed the Introduction skip menu not being skippable (yes, ironic).
Fixed the player's CAD rendering wrong in the programmer GUI.
Fixed the Programmer render crash. Again. I think. Maybe. Hopefully.
Fixed the programmer's Import button not setting the spell's name.
Fixed the Psi bar not showing up in creative if you have level 0.
Fixed tooltips going offscreen on larger gui scales.
Selector: Nearby Living now also picks up players.
The cost and power for Trick: Add Motion is now exponential.
Fixed a crash when saving player data if an invalid spell group gets registered somehow. (for real this time >_>)
Fixed a crash when someone else in a server breaks a programmer in creative. (for real this time >_>)
Fixed the Psidust Block texture not rendering.
Replaced the Golden CAD Colorizer (uncraftable) with a Psi CAD Colorizer, with a recipe!
Added a persistency system, where, in survival worlds, the player's highest level is registered, and they can revert back to it on a new world.
Added models for CADs. Textures are WIP.
CADs built only with an Assembly can now be scavenged by placing them in the crafting grid.
Loopcast spell circles now reflect the color of the player's CAD.
Fixed a crash when saving player data if an invalid spell group gets registered somehow.
Fixed a crash when someone else in a server breaks a programmer in creative.
Fixed a spell circle appearing under the player for a tiny bit after they change bullet socket.
Tweaked some icons.
Added a note to the first tutorial telling you that you can only have 1 CAD.
Added Import/Export (to/from clipboard) to the Programmer GUI.
Cyan plates are cyaner.
Fixed a (client-side) crash on multiplayer if another player casts a projectile or circle spell)
Fixed a desync where if a player dies, their information, in the client side only, is reset.
Fixed desyncs because I messed the coordinate check in the packet dispatcher :V
Fixed loopcasting not working on servers.
Increased Simple CAD Core's Complexity to 10 (from 6).
Operator: Closest to Point and Operator: Random Entity now throw a spell error if there's no valid targets instead of crashing the game \:D/
Spell search bar in spell programmers now clears when you re-open the piece selection panel.
Vector Construct is now the red piece of Vectors 101, rather than Vector Cross Product.
Added a display for remaining blocks straight out of Botania.
Added an Error Suppressor piece. It does what you expect.
Added Block Movement tricks: Move Block, Collapse Block
Added Circle bullets for Spell Circle type magic.
Added Creative CAD Assembly with infinity Potency and Efficiency.
Added decorative blocks so you can create your own lab!
Added Entity Movement tricks: Blink, Mass Blink, Mass Exodus, Mass Add Motion.
Added Integer operator tricks: Integer Division, Modulus.
Added Loopcast Bullets and relevant pieces (Selector: Loopcast Index)
Added Spell Drives, means of copying and transporting spells.
Bullets can now have cost multipliers.
Improved bullet tooltips with type and cost multiplier.
Improved the Level Up indicator to no longer be a dumb chat message.
Improved the radial selector so it shows what type of bullet a spell is.
The programming GUI now closes if the programmer is broken.
Tricks that place blocks no longer remove them from your inventory in creative.
Tweaked some icons.