Programming Mod for People Playground

+2
18:52
1.13K
Programming Mod

Adds programming with Miniscript, a simplistic programming language.

BEFORE YOU TRY

The user manual has most (if not all) of the info you need to understand miniscript
https://miniscript.org/files/MiniScript-Manual.pdf

This has some example programs for you to try and get a feel on how it works
https://steamcommunity.com/sharedfiles/filedetails/?id=3421315017



GAME INTRINSICS

Apart from running programs, you can also interact with the game in various ways
Here are all of the game intrinsics that have been added to this mod

List signalIn()

Returns a List of all signals since execution in order of newest to oldest

Void signalOut(Number channel)

Outputs a signal to the given channel (0 to 65535)

Void notify(Value any)

Prints any given input to notification area (aka the bottom-right corner)

Void draw(Number pos, String color = "1 1 1 1", Bool show = true)

Sets a pixel specified by "pos" (a value 0 to 65535, starting from pixel in the bottom left corner to top right corner) to a color value specified by "color" (in "R G B A" floating point format, A is optional). "show" specifies whether to update the screen on the next frame or not

Value store(Value any)

Stores a Bool, Number, or String into this module's memory, this value will be saved between execution instances, meaning you store and access information from a save-loaded module

Number touch(String key = "Mouse0")

Returns a Number referring to the position of the touched pixel. the trigger key can be changed to any key from unity's KeyCode
Refer to unity's keycode docs[docs.unity3d.com] for a list of KeyCodes

Matrix2D image(Number index)

Returns a 2d Matrix (Lists in a List) corresponding to each pixel color "R G B A" in an image specified to the module as an image file
the image Matrix is in [x][y] format, meaning indexer 1 gets the x position and indexer 2 gets the y position

CUSTOMIZED INTRINSICS

Intrinsics that have been modified in a way to fit the game

Void print(Value any)

Prints a given input to the module's print screen

Void wait(Number seconds)

Waits a given amount of time in real time seconds

Void yield()

Waits 0.02 seconds in physics time, or 1 tick from unity's FixedUpdate()[docs.unity3d.com]

CONTEXT MENU

More info about the context menu actions apart from their written descriptions

Set program

Any text file is allowed, as long as it has miniscript code

Set program data

Can be anything, except null

Add image

Can be any size, there had been some issues with certain files but i think its been fixed. If you encounter any image issues please write a comment

Clear image

Clears images

Run on spawn / Run on button press

Specifies whether the module can run when its spawned, or executed by pressing the button

Lock program

Locks this program with its current images and code, so you can save it and share it with other people

Changed:
- draw() uses HTML color format '#00000000'
- image() outputs colors in HTML

Added:
- color()
- input()

05.02.25 (1.27)

DOWNLOAD

File info

Download links will be available via 30 s

You can log in to your account or register on the site to download mods without waiting.

RSS
11:44

It's fire! Image????

Currently learning Miniscript just for this one and it's SO easy!

i mean, for some people. Other might find it a little bit hard if they never used a programming language such as python or CS before but, it's very easy to be honest.

10/10!!!