Edit of asset "Function Encryption" Accepted

Old/Current New/Edit
Title Function Encryption Function Encryption
Description Encrypt GDScript funcrion implementations easier

Note that this is not a safe way to protect your codes because .pck includes raw encryption keys.
Use pck encryption (https://docs.godotengine.org/en/stable/contributing/development/compiling/compiling_with_script_encryption_key.html) if you need stronger protection.

Usage (please see the sample code):
External script editor is recommended. Godot editor does not recognize .impl as a text file.
1. Activate this plugin. res://secret and encryption keys are generated.
2. Write function definitions and variables etc... to .gd file. call_impl() accepts 3 arguments: method name, object, and arguments(optional). If you need more arguments, pass array or dictionary.
3. Write function implementations to .impl files. These scripts do not need to extend any class. All functions must be like function_name(this:Object,args). Do not use self in .impl file, use this passed by call_impl() instead. You can also use super class function by passing lambda as a argument.
4. .impl is encrypted and decrypted when loaded.
Encrypt GDScript funcrion implementations easier

Note that this is not a safe way to protect your codes because .pck includes raw encryption keys.
Use pck encryption (https://docs.godotengine.org/en/stable/contributing/development/compiling/compiling_with_script_encryption_key.html) if you need stronger protection.

Usage (please see the sample code):
External script editor is recommended. Godot editor does not recognize .impl as a text file.
1. Activate this plugin. res://secret and encryption keys are generated.
2. Write function definitions and variables etc... to .gd file. call_impl() accepts 3 arguments: method name, object, and arguments(optional). If you need more arguments, pass array or dictionary.
3. Write function implementations to .impl files. These scripts do not need to extend any class. All functions must be like function_name(this:Object,args). Do not use self in .impl file, use this passed by call_impl() instead. You can also use super class function by passing lambda as a argument.
4. .impl is encrypted and decrypted when loaded.
Category Scripts Scripts
License MIT MIT
Repository Provider GitHub GitHub
Repository Url https://github.com/heppocogne/gdscript-function-encryption https://github.com/heppocogne/gdscript-function-encryption
Issues Url https://github.com/heppocogne/gdscript-function-encryption/issues https://github.com/heppocogne/gdscript-function-encryption/issues
Godot version Godot 4.0 Godot 4.0
Version String 1.0 1.0
Download Commit f93fa411e2a314a21e92ccacc2efd0682de5e063 f93fa411e2a314a21e92ccacc2efd0682de5e063
Download Url (Computed) https://github.com/heppocogne/gdscript-function-encryption/archive/f93fa411e2a314a21e92ccacc2efd0682de5e063.zip https://github.com/heppocogne/gdscript-function-encryption/archive/f93fa411e2a314a21e92ccacc2efd0682de5e063.zip
Icon Url https://raw.githubusercontent.com/heppocogne/gdscript-function-encryption/main/addons/function_encryption/impl_icon.png
https://raw.githubusercontent.com/heppocogne/gdscript-function-encryption/main/addons/function_encryption/impl_icon.png