A list of puns related to "Glulx"
Lack of Glulx on Android is improving every day. One thing I discovered is that nearly 3 years ago someone open source and released on GitHub a full Glulx interpreter that got almost no attention. As far as I can tell, it was never put on the Play store until now.
Anyone can join the testing program and download it from Google Play here: http://Incant-Test.WakeReality.com
The user interface is often the tricky part for parser interactive fiction. I invite Android software developers to submit Java code and examples of improvements and assist with support https://github.com/WakeRealityDev/incant - I will try to integrate improvements and publish updates on the Play store and Amazon app store. We should also be able to get this app up on /r/FDroid open source app store to support r/FOSSDroid.
As far as Glulx stories on Incant! goes: it will not run everything that say Gargoyle can run, some stories will not work, but many do run fine. It can be too slow for Counterfeit Monkey, I had a report that City of Secrets doesn't work right, and perhaps a few other stories.
The Glulx story Six by Wade Clarke really shows off the graphics and sound. and the original author of Incant uploaded a YouTube video demonstrating the speech interface: https://www.youtube.com/watch?v=D6i7c7jdV4Q -- keep in mind this video was made nearly 3 years ago as far as Android's speech capability.
One main thing to know: you have to press enter on every command. So, if Six says [press space to continue] you have to press space then enter. Again, software developer contributions are welcome to improve this sort of usability issue.
Thank you.
Background (you can skip this part if you're in a hurry)
I need to run Glulx on the JVM for a project of mine. I couldn't find a satisfactory solution, and saw that Twisty ended up going with FFI'ing into a C Glulx interpreter to get good performance. I couldn't really believe that a straight-up interpreter written in a JVM language could really be too slow ("how hard can it be?!") so I decided to learn enough Clojure to be dangerous and wrote a Glulx terp.
I got it to the point where I can use it to play and complete the game I am targeting, but it was slow. Really, really slow. Like, taking 11 seconds to pick up an item slow. This abysmal performance is likely due to the combination of three effects:
I am not proficient enough in Clojure to write high-performant code
Clojure itself has serious performance problems if used in such a dynamic way
The impedance mismatch between Glulx and JVM discovered by the Twisty developers is real
Interesting part begins here
I decided to scrap that project and instead try a new approach: compiling Glulx into JVM bytecode. And boy does that one seem to be
working out nicely. It is so fast that I haven't even bothered
implementing binarysearch
properly yet, since a simple linear search
is good enough.
I haven't decided yet if I will open-source the compiler, but here are
some technical details about it. It is less than 1000 lines of
Haskell, including the Glulx disassembler, the Glulx-to-JVM compiler,
and an ahead-of-time string compression table decoder. Another ~500
lines of Kotlin code form the runtime around the generated code,
including a Glk implementation that is cheaper than CheapGlk
and
provides just enough functionality to do both character- and
line-based terminal IO (but that is already 200 lines to implement
some API-mandated housekeeping). The generated JVM bytecode uses
trampolines to reify the
stack
to be able to support saving/loading.
Do note that this is "your grandma's compiler": it is completely
staged and ahead-of-time (i.e. no JIT'ing) ; supporting
self-modification and assembling into RAM are out of the question. As
mentioned, strings are also decoded at compile time, so setstringtbl
is unimplemented (and writing to the initial string table is silently
ignored); but unlike self-modification, this could be easily fixed
within the current approach. It's just not something I need for my
tar
If, like me, you've gotten frustrated with glulxe's lack of command line editing, history, and completion features when used from the terminal, there's an easy solution: rlwrap
With rlwrap, you could just run glulxe as, for example: rlwrap --histsize 10000 --remember -p'green' glulxe YourGame.gblorb
and get yourself command-line editing, a remembered history of 10000 lines, tab completion (from any word that you've typed or that rlwrap sees come from the game), and a green prompt.
rlwrap uses the readline library for its command-line editing, and readline uses Emacs keystrokes by default, but it can be configured to use vi keystrokes if you prefer, by putting set editing-mode vi
in to ~/.inputrc
For other ways in which you can change readline's behavior, see Readline Init File Syntax.
The funeral director was asking us what we think Mum should wear in her casket.
Mum always loved to wear sarongs (fabric wraps that go around the torso and drape downward a bit like a long skirt would), so my uncle suggested that she wear a sarong in there.
The funeral director looked a bit confused, as did some of our family members, to which my uncle added:
"What's sarong with that?"
I started laughing like an idiot. He was proud of it too. The funeral director was rather shocked. We assured her, and our more proper relatives, that Mum would've absolutely loved the joke (which is very true).
His delivery was perfect. I'll never forget the risk he took. We sometimes recall the moment as a way help cushion the blows of the grieving process.
--Edit-- I appreciate the condolences. I'm doing well and the worst is behind me and my family. But thanks :)
--Edit-- Massive thanks for all the awards and kind words. And the puns! Love 'em.
I would have a daughter
But Bill kept the Windows
True story; it even happened last night. My 5-year-old son walks up behind me and out of the blue says, "hey."
I turn to him and say, "yeah, kiddo? What's up?"
He responds, "it's dead grass."
I'm really confused and trying to figure out what's wrong and what he wants from me. "What? There's dead grass? What's wrong with that?"
.
.
.
He says, totally straight-faced, "hay is dead grass," and runs off.
You officially hit rock bottom
No it doesn't.
And then you will all be sorry.
Now itβs syncing.
He replied, "Well, stop going to those places then!"
I will find you. You have my Word.
She said how do you know he was headed to work?
βthank you for your cervix.β
...sails are going through the roof.
Made me smile
Mods said I'm a cereal reposter...
A taxi
But now I stand corrected.
Wait. Sorry, wrong sub.
Wookie mistake.
Theoretical Fizz-ics
Because you canβt βCβ in the dark
After spending a whole day searching for a way to run kerkerkruip on my phone, with no success, I stumbled upon this solution, so I thought I would share.
Install termux from play store.
Open termux.
To install glulxe, run the command "apt-get install glulxe".
To download the glorb file, run the command "wget <URL of gblorb file>".
To run glulxe, run the command "glulxe <filename of gblorb file>
I said, βThat makes two of us.β
so I had to ground him.
He's doing better currently.
And conducting himself properly.
An assassin
Me: Can we change the subject?
My wife: Okay. More chores around the house need to be done by you.
Please note that this site uses cookies to personalise content and adverts, to provide social media features, and to analyse web traffic. Click here for more information.