On Oct 3, 4:34 am, DanMonroe <
danmonroe....@gmail.com> wrote:
> Hey Danni,
>
> Check outhttp://
geocache-if.appspot.com/test/integration.html
>
> I've been playing around with some presentation options. In a couple
> days, I've been able to inject some interesting effects. This is just
> a work in progress, but thought I'd share my sandbox for you to take a
> look.
Oh WOW!!! I'm very impressed! I love it! I want to make changes like
this, but before doing so I'm working on changing the underlying
structure of the code. Now let me comment on your individual items:
> So far, I've got:
>
> - Separate command window
Cool... though it's probably a matter of taste as to what people will
prefer (I'm not sure myself yet.) This is something we could make a
poll for the community to answer to help us decide. Or we could even
have both, the separate and single window modes, with a setting people
can change.
> - Support for selectable themes.
Yeah this is a pretty easy change. Maybe blorbs could even have
multiple themes in them.
> - Separate status bar window
It currently is a separate window... just at the top. It's not all
fitting on my screen at the moment, so I think I prefer it this way!
> - Separate tab for inventory
How do you do that? Perhaps a sidebar would be more useful?
> - Support for custom prompts
Got examples?
> - Support for custom Room titles (i.e., the Office)
> - Support for inline images defined from objects in the game. Examine
> the Mona Lisa and Dan Monroe in the gallery room.
Is that you? :P
> Some things yet to do:
> - Work on the status bar. I haven't done much except for moving it to
> the bottom.
> - We can do a lot more with CSS that can be controlled from within the
> game. I can set properties on objects in the game to dynamically
> change the CSS.
Yes definitely, something I'd like to see is a game which slowly
changes the styles as the game progresses. You wouldn't notice it each
turn, but it would gradually get more sinister or whatever.
> - We can do the same injection with javascript, so we can bind tasks
> to different UI. For example, I've done this with the inventory. I
> put the display in a separate tab as you can see.
This would be great too, but we have to think how to keep it secure.
Atul should be able to help with this, he'd have more experience with
user contributer JS.
> - Add in the save and restore user interface.
>
> What do you think so far?
>
> Dan
What do I think? It's very exciting! This is definitely the way I want
Parchment to proceed in the future. I have even been planning to use
JQuery UI with it!
But:
1. I want the main parchment window to remain simple and plain like it
is now (though perhaps with better typography, and I think I'll change
the status bar too.) Although extra interfaces are good, I don't want
clutter. I imagine having a sidebar with "Parchment" at the top and a
little blurb about it, a link to the library (which would be a lot
more like what you have now, with tabs etc) and a list of saved games.
I actually started something like that a while ago:
http://composure-if.googlecode.com/svn/branches/parchment/parchment.html
2. I don't want to add any extra features to the Z-Machine. Let's
extend Glulx instead.
3. I would want to be able to compile games to play with our new UI as
well as with Glk. We'll need to release an extension like they have
for FyreVM.
4. Correspondingly, lets try to make our additions in a way that Glk
can be used with them. There has been a lot of success with porting
the Z-Machine to Glk. What I imagine is something like this:
We have something like our current Z-Machine UI system.
We have a JS Glk implementation.
We make a new Glulx IO system which the Glk system can be put on top
of, but is more friendly. The Z-Machine UI will either go on top of
Glk, or directly on top of ours.
If we used xml (which I probably wouldn't want to) it might be like
this:
<output>
<room-title>The jungle</room-title>
<p>We've arrived at the Jungle!</p>
<p>What out, there's a giant tiger!</p>
<p><image src="resource:1">Fallback content</image></p>
</output>
We could set the meaning of everything we output (which can then be
styled with css! yay!) as well as having fallback content, which will
make blind users etc happy. But how exactly we do this, I have no real
idea. Glk is nice, but really unsuited for the web. I would want to be
able to send data to anywhere on the page... a game would specify an
initial structure:
<game>
<status><room/><points/></status>
<content/>
<input/>
</game>
But other structures could be made too, you may want a sidebar with an
interactive compass or something. We would then stream data to one of
these elements (or replace all the content). Glk has some good things,
like streams, but it's far too restrictive of what you can stream too.
We should be able to stream <div id="new"> to something and then
stream to that new div! Also our should be UTF-8 by default.
Maybe I should go through Glk some day and list everything I think is
problematic.
Anyways, keep up with your crazy experimentations!