1. Grey Hack
  2. News

Grey Hack News

Update v0.8.4992a

[h3]Changelog[/h3]

- Fixed bug in apt.check_upgrade that did not detect the latest versions of metaxploit.so, crypto.so and librshell.so available if the versions had increased after running the script.

- Fixed bug that could cause outdated versions of the metaxploit.so, crypto.so and librshell.so libraries to be downloaded from the web if the Hackshop had been saved in the database.

- Fixed regression bug from the last update that could prevent the complete generation of a network under certain circumstances.

- Multiplayer: Fixed bug that could cause server instability if a player lost connection while a script was running that continuously sent information to the player.

Update v0.8.4988a

[h3]Changelog[/h3]

- Fixed crash when trying to report a crime without having registered an email account.

- Fixed crash when reporting a crime with an incorrect file, causing no email with the report information to be received.

- Fixed rare crash when the player exited Multiplayer mode, causing their user to not log out correctly.

- Fixed scripting crash that could occur when accessing certain networks if new versions of the libraries present in the network had been generated after starting the script.

Update v0.8.4984a

[h3]Changelog[/h3]

- Updated Admin tools.

- Added new rules in the creation of CTFs that will notify the player the first time they create a mission.

- The game moderators can now delete CTF missions if they do not comply with the new rules.

Update v0.8.4983a

[h3]Changelog[/h3]

- Fixed regression bug that could cause a blank wallpaper to be displayed to players who had played in the nightly build at some point.

- Fixed bug that caused the passive trace to not initiate the GameOver when finding the player if they were not connected to Multiplayer mode at that time.

Update v0.8.4981a

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.

[h3]Backend rework[/h3]

A massive re-implementation of several key game systems has been carried out, such as world generation, script management, interaction with files and devices in general, database management, etc.

This brings several notable improvements, particularly in the Multiplayer mode, where in addition to a significant improvement in script execution speed, the server is now capable of monitoring scripts to prevent excessive resource usage that could cause server performance issues when players executed certain scripts.

In addition to the backend improvements, a new gameplay element has been added, Capture the Flag events! Players can create their own missions to be solved by other players, earning some money in the process.

[h3]CPU Limit & Ram Limit[/h3]

These are the systems responsible for balancing server load.

Cpu Limit assigns a CPU execution time for each player. If the player exceeds this allocated time, CPU Limit will slow down the scripts so that they do not exceed this limit.

For example, having a script that runs an infinite loop, even if it is empty, will trigger CPU Limit, which will moderately slow down the script. The more scripts running at the same time that are triggering CPU limit, the slower they will all go in order to not exceed the CPU time assigned to the player.

A good practice to avoid triggering CPU Limit is to introduce waits in parts of your program where it is not necessary to be running at full capacity, such as in iterations of an infinite loop. A wait(0.1) in the appropriate place will be sufficient to avoid triggering CPU limit in most cases, as by waiting we are saving CPU time. In addition to wait, the user_input method resets CPU limit for that script.

On the other hand, RAM Limit is responsible for monitoring the real RAM memory usage on the server that is being used by the players' scripts. At the moment, the limit is approximately 512mb, once that point is reached, RAM Limit will stop the program with a notice in the terminal.

512mb is a more than generous amount of memory for a script, if RAM Limit closes any of your scripts, it would be advisable to review your implementation as you are reserving much more memory than necessary.

It is important to note that CPU Limit and RAM limit are only present in Multiplayer mode.

[h3]World generation & Database management[/h3]

Several aspects of database management have been re-implemented to avoid saving redundant data, which was causing very large database sizes over time. This also caused performance to gradually decline as queries were taking longer and longer to execute. Now each network is generated from a seed and only the device data is saved in the database when any change occurs.

This allows for performing database maintenance under optimal conditions, as from now on semi-wipes of the database will be possible to keep consistent performance over time. When these semi-wipes occur, the impact on players will be minimal. It will only affect NPC networks, and the result for the player will be the same as if the NPC admin had restored the computers in a network.

[h3]Capture the Flag[/h3]

Or commonly called CTF, are missions that players can create. You can visit any Hackshop to see the list of available missions.

To create a mission, you first need to rent a server. This rented network will be used as a template for the networks that will spawn when players accept your mission. In these missions, both the creators and the players who solve them receive money. The more players solve and rate your missions, the more money you can make.

[h3]Overwiew[/h3]

In the coming weeks, I will fix regression bugs that may have escaped us during the nightly build. When I consider that the Public version is stable, the next cycle of the nightly build will begin.

The next nightly build, unlike this one, will be dedicated practically entirely to introducing new gameplay elements. You can check the Roadmap to see the progress of development.

Happy hacking!