0.16.0 multiprocess parallelism


This release adds full multiprocess support: by default, LiSE will run your rules' triggers in subprocesses, so it'll be faster than before when there are lots of triggers.

If you know a bit about parallel programming in Python already, you can use LiSE's new Engine.pool.submit(..) function, just like the one in Python's basic concurrent.futures module, to run whatever code you've stored in the engine's function and method attributes. Putting your functions in a file function.py with the rest of the game code, then accessing the functions in that file as Engine.function.whatever, will work fine.

An additional optimization is available if your rule is meant to run only when something changes near the entity it runs on. Set a neighborhood, now demonstrated in the README, to take advantage.

ELiDE also responds to changes in graphics that the LiSE engine tells it to do, like setting thing["_image_paths"] to a list of image files in the Awareness example. This isn't so much a new feature as an old one that I seem to have turned off on purpose at some point. I don't remember why anymore, so here it is.

Files

ELiDE 0.16.0 win.zip 58 MB
Oct 11, 2024
LiSE-0.16.0-py3-none-any.whl 302 kB
Oct 11, 2024
ELiDE-0.16.0-py3-none-any.whl 3.9 MB
Oct 11, 2024

Get Lisien

Leave a comment

Log in with itch.io to leave a comment.