HNHacker News
TopNewBestAskShowJobs

Mavox-ID

1 karma · joined January 13, 2026

submissionscomments
Mavox-ID··on Procedural Tornado System for People Playground (C#)
I created a mod that implements a more nuanced weather system in People Playground.

I was frustrated with existing implementations: they were either just visual fog or lacked physical scaling (lifting the entire map regardless of mass).

Technical highlights:

EF Scale Categories: Implemented physics-based scaling according to the Enhanced Fujita scale.

Anemometer & Signal Logic: Built a custom sensor system that outputs signals based on wind speed, allowing for automation within the game's circuit system.

Force Distribution: Improved the lifting logic to account for object mass and distance from the vortex core.

Link to Steam Workshop: https://steamcommunity.com/sharedfiles/filedetails/?id=37069...

I haven’t open-sourced the code yet, but if anyone is interested in the physics math or the C# implementation, let me know — I’d be happy to push it to GitHub!

Mavox-ID··on Helping promote the Lax programming language
Hello, moderator! I read your message and wanted to ask you for links to similar comments about people who created their own programming language so I could understand how to properly comment. Don't worry about the website; it's constantly updated, and documentation is currently being developed for Lax, detailing its commands and providing examples of each command. This will help me learn Lax syntax and be able to write anything instantly after reading the documentation.

All the problems that people see in Lax can be easily solved through updates. Lax was created as an ultra-light language that can be written almost immediately after downloading and does not require additional installation of various libraries. It was also created for writing programs on Linux as a binary file that can be used as a program. It is because of this feature that Lax updates commands and adds new ones to make it easy to do anything with it. Unfortunately, only the CLI version of all written programs is currently supported, but in the future, it is planned to add the gui command and others for interacting with the system through the GUI and UI, and not just the CLI through the terminal.

Mavox-ID··on Helping promote the Lax programming language
The problem with README.md was caused by our moderator, we have already fixed README.md
Mavox-ID··on Helping promote the Lax programming language
Lax is completely open source and uses the MIT license. You can download the release from Github: https://github.com/lax-Inc/Lax/releases/tag/6.0.6 . However, I warn you that Lax is currently only for Linux, and you can build it with Conda Make or, for more details, use Make Help. I asked you to create an empty Github repository where you will create a project with a file with the .lx extension and a detailed README.md about the project (not what you used in the code, but what it does and why. We recommend checking the code using the Lax argument: -o and uploading it to Github). The most important thing is that the project is empty and uses a minimum of an .lx file with code written in Lax and a README.md explaining the program at a minimum. The rest is up to you. (Just don't mention that this is help for Lax; the project should be about interest in using the Lax programming language, not about help.)

Any questions regarding eq? In code, eq? checks whether two values point to the same object in memory (referential identity). In other functions, it's the check code itself, created earlier, not the function itself. (It's like a variable that participates as a command but is itself executed via spor. If used, it executes another command, such as eq? , but with the value entered by the user.)

For example:

[spot [is_true [x] [x]] eq? [x] [x]]

And more.

The fact that you found Sourceforge is one of the ways to download Lax, which is currently temporarily non-existent. You can download it using the button right at the beginning of the site 'Download Lax 6.0.6'. What you saw in README.md was a test version of Lax and did not apply to the current version at all. Lax currently uses MIT and you can download and edit Lax as you like and even suggest your changes through forks of the official repository. Lax is compiled very quickly using make and is not sold. Lax is simply provided in the form of only .c code, where you compile it yourself and is not immediately submitted only as a binary file, where you cannot open it like the same .c code and edit it.

Mavox-ID··on Helping promote the Lax programming language
The official website is still under construction and will have a different URL, but for now you can check out the temporary github.io site: https://lax-inc.github.io/Website/
Mavox-ID··on Helping promote the Lax programming language
Lax has S-syntax and Lisp-like code. It can help you learn programming and write programs on Linux, even a simple calculator or shell, and much more. Lax also has over 145 commands that you can use to do anything.

Here's an example of Hello World:

[start [image "Hello World!"] [nl] ]

start - Creates a command chain image - Prints text nl - Creates a line break

You can also use just an image using \n:

[image "Hello World!\n"]

Here's how to work with input:

[start [spot name [input "Enter your name: "]] [image "Hello, "] [image name] [image "!"] [nl]]

spot - Creates a variable input - The simple input command will print Lax> and wait for the user to enter input. If it's quoted like "image," it will be the text inside the quotes.

Here we go. We create a variable 'name' where we assign it the value of the user's input, and then use image to display what the user entered. This is basic work with input and output, as well as variables.

And here's also a simple calculator that calculates roots, powers, and other mathematical equations:

[start [spot op_raw [input "Select operation (+, -, , /, sqrt, expt): "]] [spot op [string->sign op_raw]]

[spot is_unary [eq? op [string->sign "sqrt"]]]

[spot first_raw [if is_unary [input "Enter number: "] [input "First number: "]]] [spot first_num [to-number first_raw]] [spot first_ok [and [> [string-length first_raw] 0] [number? first_num]]]

[spot second_raw [if [not is_unary] [input "Second number: "] ""]] [spot second_num [to-number second_raw]] [spot second_ok [or is_unary [and [> [string-length second_raw] 0] [number? second_num]]]]

[spot dispatch_table [list [cons [string->sign "+"] +] [cons [string->sign "-"] -] [cons [string->sign ""] ] [cons [string->sign "/"] /] [cons [string->sign "expt"] expt] [cons [string->sign "sqrt"] sqrt] [] ] ]

[spot op_pair [assq op dispatch_table]]

[spot ans [if [not first_ok] "Error: Bad first number" [if [not second_ok] "Error: Bad second number" [if [not op_pair] "Error: Unknown operation" [start [spot func [tail op_pair]]

[if [and [eq? op [string->sign "/"]] [= second_num 0]] "Error: Division by zero" [if [and is_unary [< first_num 0]] "Error: Negative root" [if is_unary [func first_num] [func first_num second_num] ] ] ] ] ] ] ] ]

[image first_raw] [image " "] [image op_raw] [if [not is_unary] [start [image " "] [image second_raw]] ""] [image "="] [image ans] [nl] ]

Mavox-ID··on Helping promote the Lax programming language
The site is under repair and there will be another link, but unfortunately it is currently unavailable.