Enhance Programmable Block: Remove Limits, Add Project Support, Datapad
This text was previously published as a comment, but I decided to make it a separate proposal.
As a programmer, I find the following changes to the Programmable Block could be highly beneficial:
Firstly, removing the code size limitation: The current limit on code size can be quite restrictive. I’ve even had to create an obfuscator that reduces code by removing insignificant characters and comments, and by shortening variable names. The performance of the code depends on its quality, not its size.
Secondly, support for reading code from disk: It would be extremely convenient to read code directly from a file. Since the code ultimately ends up in the block through copy-pasting from a development environment, why not simplify life for programmers? A feature that allows for easy updating and compiling of code directly from the disk would be a great addition.
Moreover, project support: Following from the previous point, it would be useful to have project support. Even simple code can benefit from being split into multiple files based on certain criteria. For instance, a project could be defined using a JSON, INI, or YAML file that lists the files to be read sequentially, merged into a single text, and then compiled. Utilizing multiple files within a project can significantly enhance code reuse across different projects, allowing for more efficient maintenance and consistency.
Additionally, it would be great to have two modes for the Programmable Block: a large text editor for direct in-game code editing and an option to select a project file from the computer.
Furthermore, we could take this even further by introducing a one-slot inventory in the Programmable Block interface, allowing players to insert a datapad or a 'diskette.' The tablet would be used for in-game code editing, while the diskette could serve as a pointer to a project file on the computer.
If we completely shift code editing operations to the tablet, there are several advantages:
- Code Persistence: When dismantling the Programmable Block, the code won't be lost; it will remain on the datapad, which should "drop" as an item.
- Logical Workflow: Editing code on a device with a screen makes more sense logically.
- Immersive Experience: Players can immerse themselves in the game by sitting on a sofa in front of a panoramic window, taking out their datapad, and editing code.
- Code Exchange: It would be possible to exchange code with other players or even steal code from opponents, adding an interesting dynamic to the game.
Replies have been locked on this page!