[HN Gopher] Spritely Goblins v0.13.0: Object persistence and eas...
___________________________________________________________________
Spritely Goblins v0.13.0: Object persistence and easier IO
Author : paroneayea
Score : 44 points
Date : 2024-04-23 19:11 UTC (3 hours ago)
(HTM) web link (spritely.institute)
(TXT) w3m dump (spritely.institute)
| dang wrote:
| Surprisingly little discussion in the past! But I found these
| two:
|
| _Spritely Goblins v0.11.0, time travel distributed debugger and
| more_ - https://news.ycombinator.com/item?id=35864365 - May 2023
| (1 comment)
|
| _Growing a Networked Garden with Spritely Goblins_ -
| https://news.ycombinator.com/item?id=34031136 - Dec 2022 (2
| comments)
|
| Maybe we should convert this thread to a discussion of the
| project as a whole, rather than of a point release?
| andrewflnr wrote:
| People will feel free to comment on the project as a whole
| anyway, so why go to the bother of making a special thing out
| of it? :)
|
| I am surprised you didn't find more discussion, though. I'm
| pretty sure I first heard of the project and have seen it here
| multiple times. I think it's more often (or in the past) just
| "Spritely". If your search included the word "Goblins" instead
| of just "Spritely", that might have narrowed it down
| excessively.
| kgeist wrote:
| Reminded me of a game engine of mine. Years ago I was
| experimenting with a time travel game concept. It had a virtual
| machine with green threads whose state could be suspended and
| serialized into a single binary blob at any time. I basically
| repurposed the GC's reachability analysis to find all objects
| reachable from the roots (VM's stack and global variables). IIRC
| it had also some sort of topological sort when serializing so
| that most references could be restored in one pass. It also
| serialized the stack itself and the current instruction pointer.
| "Manual persistence" they mention is actually quite
| straightforward to do if you're in full control of the VM.
| Additionally, it also serialized the physics engine's state as
| well, so that the forces applied were fully restored (important
| in a game). The concept was about being able to return to any
| point in time and have N versions of yourself working together to
| solve a problem. NPCs and objects had running scripts attached
| and that's why I needed the whole thing. It also allowed to have
| proper game saves out of the box. Oh, those were the fun times,
| and now I'm writing boring enterprise stuff :)
| BaculumMeumEst wrote:
| You may enjoy this talk about the implementation of Braid's
| rewind:
|
| https://www.gdcvault.com/play/1012210/The-Implementation-of-...
| ryukafalz wrote:
| This is great! I've been following the Spritely project on the
| sidelines for a while now and have built a couple toy
| applications with Goblins; persistence and IO were often my
| biggest pain points. Looking forward to giving this a try soon!
| cxr wrote:
| This blog post commits the common sin of showing a screencapture
| of a terminal emulator session that moves at the speed of thought
| of the creator rather than presenting things in a reasonable way
| for the person actually consuming it (i.e. the one in the
| audience who's trying to work out, without the creator's a priori
| understanding of what they're doing, the relative
| significance/insignificance of whatever's flashing on the
| screen).
|
| This happens constantly with software demos. It shouldn't. It's
| such a silly thing to mess up and takes more effort than just not
| including a screencapture whatsoever.
| ryukafalz wrote:
| The only thing in that screencapture that happens outside of
| the space shooter game is relaunching the game after closing
| it. If you know that pressing the up arrow and enter to run the
| last command is a common thing, I don't think that's too hard
| to follow.
|
| Granted, I've played the space shooter in question before, so I
| do have some context :)
___________________________________________________________________
(page generated 2024-04-23 23:00 UTC)