1. Grey Hack
  2. News
  3. Update v0.9.6087

Update v0.9.6087

The public build has been updated with the latest available version of the game!

As usual, since the nightly build has merged to the public version, the nightly build has been disabled until the next cycle.

This update has mainly focused on the migration from Bash to scripting, as it was the last part of the Terminal that needed to be migrated to scripting like any other command. This significantly improves the integration of players' scripts with the game, adding support for complete terminal replacements, which until now were very limited as they had to be launched as conventional programs and could not interact with key points of bash like the bash history or launch visual programs.

These are the main new features of this update:

[h3]Bash migrated to the scripting system[/h3]

When you open a terminal, it will now load Bash from the path /bin/bash allowing you to replace the default bash with your own on any system. You can view the Bash code with CodeEditor.exe -code bash. When making a remote connection, for example via SSH, calling start_terminal will load the /bin/bash of the remote machine.

This Bash migration improves security by closing potential exploits that could originate from the client side, as many variables that were previously exposed are now only available on the server side. It allows scripts created by players to integrate much better into the systems by eliminating the client part that interrupted the scripts when returning to the bash prompt, since technically we are now always executing a script the moment we open a terminal and it only ends when we close it.

This new system also brings other interesting changes, such as the migration of commands like cd, now located in /bin, and the execution of .exe programs from scripting. You can also use autocompletion and terminal command history from scripting.

With this migration, we also fixed issues that we had been dealing with for a long time, such as program_path and launch_path returning inconsistent values, which are now fixed and their documentation updated.

[h3]Changes in Scripting[/h3]

All scripting methods that accept a path as a parameter now only accept absolute paths for consistency, as previously only some methods accepted relative paths. A new method called get_abs_path has been added, which converts relative paths into absolute ones. Since the migration from bash has led to a significant redesign of the scripting system under the hood, other commands have also undergone changes, such as scp, so it is advisable to take a look at the new documentation when you encounter any behavior different from the usual.

Support to accept paths like "." or "./" has also been added in the commands through get_abs_path, used to refer to the current folder in the Terminal. For example, if we launch cp /lib/init.so ./ in the Terminal, this will copy init.so to the folder where we are currently located in the terminal.

[h3]Active and Passive Traces[/h3]

In the previous version of the game, the trace system did not work correctly especially the passive trace, causing many traces not to initiate. In this version both trace systems have been rewritten to work properly with the new bash system, so it is recommended that you take another look at the Manual in the Traces section to ensure you are erasing your tracks correctly. It is also recommended to open AdminMonitor.exe before making any connection to detect Active Traces.

Upon receiving a strike due to a Passive Trace, you will now be able to check the details to see the log history of the different systems that have led to you. The Strike windows inform whether it was due to a passive, active, or banking trace.

[h3]File Encryption[/h3]

New methods have been added for scripting: crypto.encrypt, crypto.decrypt, and crypto.is_encrypted, allowing files to be encrypted with a password. This enables ransomware-type attacks, although it can also be used for other purposes, such as a defense system to protect certain files, etc.

Encrypted files and programs cannot be read, have their content modified, or be executed.

[h3]DDoS[/h3]

Added net_session.flood_connection method to perform DDoS attacks. This attack must be carried out from multiple networks and terminals to be effective. If the attack succeeds, the victim’s machine will reboot and will not be available for 10 minutes (ingame time). Depending on the victim's network speed, two or more players with multiple active terminals each will be needed for the DDoS attack to be effective.

[h3]SuperAdmins[/h3]

It is now possible to hire Superadmins for rentals via ConfigLan.exe. Like in NPC networks, superadmins intercept overflow attacks by forcing guest permissions and also protect networks from DDoS attacks. Unlike NPC network Superadmins, they do not initiate passive or active traces.

When a superadmin is hired, the whois information is updated with the new admin’s details, which can be used to identify the NPC’s associated network. This associated network is the one to which the Superadmin belongs, who in their network may hold another position. Like any NPC, they are susceptible to certain attacks that can prevent them from performing their work. If the Superadmin dies or is fired in their associated network, they will stop working for the player who hired them.

[h3]Mini TCP simulation[/h3]
A simple system has been implemented to detect if any computer, whether it is a proxy or not, that you are connected to, has internet access before you can execute network commands. This means that if, for example, you have connected from your home PC > rental > NPC computer, but you interrupt the network of your rental, you will not be able to execute commands that require network access from the NPC computer. It is possible that this will extend to any command in the future.

[h3]Some QOL improvements[/h3]

Now you can select icons in any FileExplorer and the Desktop with a left mouse click, or by pressing TAB, and navigate through them using the arrow keys, TAB, Shift+TAB, and launch them by pressing the Enter or Space key. You can also use Tab and Shift+TAB to navigate through certain controls like Input fields and Dropdowns.

Additionally in FileExplorer, you can go up to the parent folder with Alt+Up Arrow and navigate Back and Forward with Alt+Left Arrow and Alt+Right Arrow respectively.

[h3]Bug Fixing[/h3]

A complete review of the reported bugs in GreyTracker has been done, with a total of 200 fixed. Of these about 45 were resolved in this nightly build, while the rest had already been fixed in previous versions of the game, although they weren't marked as such at the time. The remaining pending bugs in GreyTracker will be addressed in the next nightly build.

[h3]What's next[/h3]

Finally all the planned gameplay elements have been implemented and the Roadmap is almost complete, so we only have one more nightly build until version 1.0 to get out of Early Access, in which I will focus on making a deep bug fixing, adding music and sound, a complete Tutorial rework, more missions, more QOL improvements, and a complete revision of the logic of the stocks companies in addition to balance and adjustments of existing systems.

Thank you for your support and feedback, the best part is still ahead!