Skip to content

Releases: EngineHub/CommandHelper

MethodScript Cmdline Installer (Windows)

10 Jun 11:00
Compare
Choose a tag to compare

Support/require Java 16 downloads

CommandHelper 3.3.4 Final

09 Jun 12:07
a804b81
Compare
Choose a tag to compare

3.3.4

CommandHelper 3.3.4 supports Minecraft 1.13.2 - 1.16.5. All extensions must be updated when upgrading from previous versions.

New Feature Overview

  • New Visual Studio Code extension with syntax highlighting, function/event peeking, and linting for compile errors and warnings
  • Adds Static Analysis framework, including type and scope checks for variables and procedures
  • Adds telemetry (disabled by default)
  • Adds cmdline support for Windows
  • Adds 'requiredExtensions' and 'compileroptions' to File Options
  • Adds 'CodeUpgradeNotices' to suppressWarnings in File Options
  • Adds '.msfileoption' files for directory level File Options
  • Adds support for multiple semi-colon separated paths for 'base-dir' in Preferences
  • Adds support for Brotli encoding in http_request
  • Adds 'json-api', 'cmdline-args', 'build-extension', 'help-topic', 'edit-prefs', 'install-mssql-auth' tools to Cmdline tools
  • Adds MSSQL support for query() and in Persistence Network
  • Adds documentation localization tools 'validate-l10n' and 'l10n-ui'
  • Adds 'help' command to Interpreter to lookup functions
  • array_index_exists now supports multi-dimensional arrays and negative indices
  • Adds reflect_pull('dir')
  • Adds support for Minecraft 1.14 through 1.16.5
  • Adds smart comments to aliases and implements @command structure
  • Adds attribute modifiers and custom model data tag to item arrays
  • Adds support for hex color codes in color() and colorize()
  • Expands Minecraft recipe support

Other Changes

  • Bare strings are no longer allowed
  • Auto concatenation is no longer allowed in Strict Mode
  • Minecraft events now ignore fake players
  • Faster startup times and other performance improvements
  • Hundreds of others fixes

Function API Additions

77 new functions have been added.

MethodScript additions: map_implode, array_push_all, array_get_rand,
array_subtract, x_find, switch_ic, include_dir,
execute_array, parse_text_table, always_trace, hypot,
get_compiler_options, get_compiler_warnings, set_runtime_setting,
remove_runtime_setting, has_runtime_setting, nameof,
engine_location, define_object, new_object, get_pid,
reflect_type, class_type, x_write, average, sum,
median, mode, percentile, string_contains_ic,
x_thread_join, x_thread_is_alive, x_interrupt, x_is_interrupted,
x_clear_interrupt.

Minecraft additions: get_tabcomplete_prototype, tell_raw, get_projectile_item,
set_projectile_item, get_blockdata, set_blockdata, set_skull_owner,
get_skull_owner, get_sky_light_at, get_block_light_at,
is_block_lockable, is_block_locked, get_block_lock, set_block_lock,
get_cmd_completions, all_materials, entity_attribute_value,
entity_attribute_base, entity_attribute_default, entity_attribute_modifiers,
set_entity_attribute_base, reset_entity_attribute_base,
add_entity_attribute_modifier, remove_entity_attribute_modifier,
get_entity_immunity_ticks, set_entity_immunity_ticks, is_entity_sleeping,
pflying, pattack_cooldown, get_plist_header, set_plist_header,
get_plist_footer, set_plist_footer, ptellraw, pstatistic,
set_pstatistic, pblocking, psprinting, remove_recipe,
set_world_day, get_world_day, set_keep_spawn_loaded.

Event API Additions

7 new events have been added.

block_explode, block_form, hanging_place, entity_unleash, potion_splash, entity_potion, resource_pack_status

MethodScript Cmdline Installer (Windows)

13 Feb 14:05
6f5e1d8
Compare
Choose a tag to compare

Use a simpler, more reliable approach to finding out if java is already installed.

MethodScript Cmdline Installer (Windows)

05 Feb 22:26
9b7e742
Compare
Choose a tag to compare

This installs the command line version of MethodScript on Windows. The exe is fully self contained, and no additional dependencies are required, they will be downloaded and installed for you.

CommandHelper 3.3.2

28 Jul 06:31
Compare
Choose a tag to compare

Developed over two and a half years, CommandHelper 3.3.2 compatibility stretches from Minecraft 1.7.10 to 1.12.2, and offers many new features, fixes, and optimizations.

New Feature Overview

  • New "synchronized" keyword and functionality
  • New "notinstanceof" keyword
  • Secure strings added
  • New ||| and &&& syntax for new dor and dand functions
  • New website and documentation deployment tool for methodscript.com
  • OAuth support
  • Added "verify" command to cmdline tools
  • Added "new" command to cmdline tools
  • Added $$ mode in cmdline
  • Better international language support for variable and procedure names
  • File Options file headers and initial Strict Mode support
  • Significantly improved startup and compile times
  • Adds support for Minecraft 1.9 - 1.12.2
  • Virtual inventories
  • Boss bar management
  • API Additions
  • 76 new functions and 10 new events have been added.

MethodScript Additions

dand, dor, get_clipboard, set_clipboard, shell_on_adv, shell_on, get_os, in_cmdline_mode, sha512, sinh, cosh, tanh, round15, clamp, x_get_oath_token, {{function|clear_oath_tokens}}, srand, x_recompile_includes, get_system_timezones, string_starts_with, string_ends_with, char_is_uppercase, string_contains, string_multiply, secure_string, decrypt_secure_string, synchronized, and x_launch_browser

CommandHelper and Minecraft Additions

get_bars, create_bar, update_bar, get_bar, remove_bar, bar_add_player, bar_remove_player, get_bar_players, title, executeas, set_entity_glowing, get_entity_glowing, get_entity_silent, set_entity_silent, get_entity_gravity, set_entity_gravity, get_entity_invulnerable, set_entity_invulnerable, get_scoreboard_tags, add_scoreboard_tag, remove_scoreboard_tag, clear_pinv, get_inventory_name, popen_inventory, pinventory_holder, get_inventory_viewers, get_virtual_inventories, create_virtual_inventory, delete_virtual_inventory, set_mob_owner, set_entity_gliding, get_entity_gliding, get_entity_ai, set_entity_ai, display_name, clear_peffects, psneaking, phealth, plast_known_name, stop_sound, stop_named_sound, pcooldown, set_pcooldown, get_pteam, get_vector, distance, get_world_border, and set_world_border

Event API Additions

block_from_to, block_fade, entity_toggle_glide, firework_explode, entity_regain_health, entity_portal_travel, item_swap, server_command, broadcast_message, and vehicle_destroy

CommandHelper 3.3.1

27 Jan 20:23
Compare
Choose a tag to compare

3.3.1 is a culmination of almost 4 years of work. There are hundreds of new functions, and tons of bugfixes and new functionality.
Update Breakages

Extensions that worked previously can now only work with the latest builds. All extensions will need to be updated.
New feature overview

  • Closures were added. Many methods require a closure, but you can use closures in custom code as well.
  • Smart Strings. Variable interpolation in strings quoted with double quotes, "@likeThis".
  • Local Packages. Group your code into logical batches.
  • MSLP files. Use the MSLP maker cmdline tool to distribute your code in a single file.
  • Operators. Instead of using add(2, 2), use 2 + 2.
  • Script optimization. Many backend changes have been made to make your scripts run even faster, with no effort on your part
  • Brace Syntax. Use braces in more places: if(@condition){ }, for instance. Makes your code much easier to read.
  • Switch statements. Rewrite large chains of if/else if into the better looking switch statement.
  • while/dowhile loops. Some loops can be more easily written using these mechanism.
  • SQL. Connect to MySQL, SQLite, and PostgreSQL databases.
  • Cmdline. Like MethodScript? Use it anywhere! Run scripts from the command line, and do some neat cmdline only things.
  • Persistence Network. Store your data in lots of different formats, not just the built in serialization format.
  • PN Viewer UI. View your data using a GUI, instead of messing around with command line stuff. Connect to a remote server even, so you can run the GUI on your desktop, and manage your headless server.
  • Code Profiler. Profile your code, to find where the slow spots are.
  • Byte Arrays. Manage bits and bytes.
  • Extensions. Not officially supported yet, but generally quite useful. Add your own functions, or get extensions from other people to extend MethodScript.
  • HTTP functions. Connect to a website, and download information from the web, then use it in your application. Allows for SOAP, REST and other web based connections
  • Removal of PermGen requirements. No longer will you need to edit your PermGen settings, a new backend is now in use.
  • Shell functions. Run other executables on the system.
  • Typing. typeof() instanceof() and other methods have been added to allow you to more easily manage your data types.
  • // is a line comment. Use the traditional C-style line comment in your code.
  • function_exists/event_exists/compile_error. Using these special functions, make your code work with different versions of MethodScript.
  • 0b and 0x. Write hex and binary numbers directly in code. 0xF == 0b1111 == 15.
  • Well definied array iteration. When adding and removing values while iterating arrays in foreach, they do what you want in more cases.
  • Email support. Easily send an email from your scripts with the email() function.
  • Type hinting. Make sure your variables pick a type and stick with it. Type hinting is now implemented, and will eventually be upgraded into strong typing. int @int = 'not an int'; is now an error.
  • Fully supported try/catch blocks. Catch multiple exception types and do different things for each. Finally clauses also supported.

407 functions were added, and 76 events were added. See the changelog on the wiki for full details.