User:Mulehollandaise/Interpreters TODO: Difference between revisions

From IFWiki
Line 109: Line 109:
* TypeScript, JavaScript, HTML, CSS, Design, Inform 7 (story and extensions)
* TypeScript, JavaScript, HTML, CSS, Design, Inform 7 (story and extensions)


== WinGlk (Windows Glk library)
== WinGlk (Windows Glk library) ==


- Add integrated scrollback.
- Add integrated scrollback.

Revision as of 03:42, 20 November 2015

Following this thread, this is an attempt to list some of the work that needs to be done on some interpreters. This encompasses bugs, features, and even ideas for new projects.

I've expanded this to include development tools as well. We could move this to a general ifwiki page. --Z

Development Tools

Inform 7

Project page: [1] Issue list: [2] Feature suggestions: [3]

- A set of choice-based and hyperlink-based extensions. (Preferably based on Unified Glulx Input).

Inform 6

Project page: [4] Issues list: [5]

- Update more memory settings from manually-set to allocate-as-needed.

  • This means that game authors don't have to set $MAX_WHATEVER limits as their games get larger.
  • There are a lot of these; focus on the ones which tend to overflow first.

Inform 6 library

Project page: [6] Issues list: [7]

  • Write a test suite for the standard parser and model world.

Interpreters

Gargoyle

Project page: [8] Issues list: [9]

Reviving the project

- Need an official maintainer (is there one?)

  • Skills : C, time

- Report bugs

  • Skills : none?

Bugs that need to be fixed

- Fix bugs on the list of issues

  • Skills : C

- Fix bugs in Glulxe: "Fix the scrolling delays that have been reported?" (from zarf's list)

- Wade: people have hacked Gargoyle just to get a popular game to run (eg Counterfeit Monkey)

- Wade: sound on Mac (are we talking about the Glulx terp?) have bugs, not longer up to date, out of date with glk

- I think the Linux version of the frotz in Gargoyle has a bug where some one-letter commands are not recognized, but I could be wrong (todo: test and see)

Supporting more formats

- Support TADS games with version > 3.1

  • dddddd needs help with adapting his Linux code to multiplatform: [10]
  • Skills: Multiplatform C/C++ and jam required. Bonus if TADS and gargoyle codebases familiarity.

- TADS webui support

  • I think this means support HTML TADS ?

- Support ADRFIT 5 games?

- Use the "very latest" Alan interpreter

  • Robert DeFord's Onaar (IFComp2015) patched Gargoyle so that it used the latest Alan interpreter
  • Skills: see with Robert DeFord

Other

- Add "Preferences" UI


Parchment

Project page: [11] Issues list: [12]

- allow CSS stylesheets to be passed in URLs, implement timed effects, autosave system, etc.

  • Skills : JavaScript, Z-Machine knowledge

- Is the buglist on GoogleCode still relevant?

Zeugma

- Detailed instructions on how to use this

  • Skills: C64 and multi-function cartridges (like 1541 Ultimate)

- Accents are not displayed yet

  • Skills: being awesome at C64 programming

- perf improvements? (Inform 7 games are way too slow)

  • I doubt it's possible since the author seems pretty awesome at C64 stuff
  • Skills: being awesome at C64 programming

Quixe

Project page: [13] Issues list: [14]

- Implement sounds

  • Skills : JavaScript, Glulx knowledge

- Implement style hints? Or wait until the CSS-style stuff is implemented?

- Detailed instructions / documentation? (kind of like that

  • Skills : fiddling with zarf's tools until you get it right, clear writing

Glulx-TypeScript

- Implement Templates

  • TypeScript, JavaScript, HTML, CSS, Design, Inform 7 (story and extensions)

WinGlk (Windows Glk library)

- Add integrated scrollback.

CocoaGlk (MacOS Glk library)

Project page: [15] or the copy included in [16] -- sorry, it's unclear which is more current

  • Many bugs! See [17]
  • When fixed, recompile Mac Zoom and release it.

iOSGlk

  • Graphics and sound
  • Merge data-import/export from iOSGlulxe to iOSFizmo (ability for interpreter to import and export save files)

RemGlk (JSON-interface Glk library)

  • Support timer events (I think these will have to be handled by GlkOte and transmitted through the JSON API)

Twisty (Android)

Project page: [18] Issues list:[19]

  • Skills : Android/Java, Z-machine

Web Sites and Services

IFDB

- Modernize UI

- Understand the existing of pure-HTML games, iOS-only games, etc

- IFOMatic [20]

  • This is a demo of a tool which can run through a batch of Z-code and Glulx games and generate a "screenshot" (text, not GIF) of the game's opening screen. Would work in bulk, but would need a human to go through and tweak for particular games (e.g. if you have to hit a key to start).
  • Something like this could work for Twine, but would need completely different underlying technology. (IFOMatic is based on RemGlk.)
  • Finish this up, add to IFDB?

IF Archive

- Rewrite ifmap (the program which generates the index files) from C to Python 3. Fix all the stupid encoding issues.

- Implement the proposed http://babel.ifarchive.org/ service (a RESTful API for fetching IF metadata)

Specs and General Information

Glulx/Glk Spec

Look at Zarf's list and help him!

- Glk 2.0 (integrate HTML and CSS) + change interpreters to fit the spec (see the post)

  • Skills: don't know

Releasing games

- Write a tutorial on how to release a standalone-app of your interactive fiction (Inform, in particular)

  • Some people use NSIS to create bundle; others say "rename WinFrotz.exe or Gargoyle.exe so it has the name of your game and it'll start it automagically"
  • Skills: writing a clear tutorial for multiple platforms and formats

- How do you do it on mobile?

  • iOS: Z-code and Glulx instructions at [21]
  • Android: is there *any* way to do it?

Other

- Mobile interpreters? (on Android, iPhone, etc)

  • Skills: unknown yet

- A Choosatron-style interpreter (that prints the output on 'receipt'-sized thermal paper) would be amazing

  • Maybe we can use a Rasberry Pi for that (frotz is available on it + some people (see http://frederickvandenbosch.be/?p=1297 ) interface raspPi (and its touch screen) and thermal printers
  • Skills: Arduino, code, etc.