Magnetic Scripts released

#1

Hi,

to celebrate the 30th anniversary of The Pawn I just published the first release of Magnetic Scripts.

The Magnetic Scripts engine runs Magnetic Scrolls games directly in the browser. It is a port of Niclas Karlsson’s great Magnetic interpreter to HTML5 and Javascript and has almost all features of the native Magnetic versions. Some highlights:

  • Saving an restoring games is supported. With most of the current browsers you even get a persistent storage, so your save games are stored across game sessions.

  • Save game files from Magnetic Scripts can be used with native interpreters.

  • Optional save game storage on the Magnetic Scrolls Memorial server. Sync your save games across different clients.

  • Supports HTML Fullscreen mode.

  • Pictures and music are supported. On desktop machines, the Wonderland music is real Midi playback. Pictures can be scaled at runtime.

  • Integrated hint system based on the original hints from the manuals.

  • The classic games support both the Amiga 16bit graphics and the C64 8bit graphics.

  • Pure HTML and Javascript: No Java or Flash required!

Magnetic Scripts is part of the Magnetic Scrolls Memorial at http://msmemorial.if-legends.org/
You can access Magnetic Scripts directly at http://msmemorial.if-legends.org/msa2/

Magnetic Scripts uses current HTML and Javascript inventions, so you need a recent browser! The Magnetic Scripts starting page contains various compatibility notes and configuration hints.

And of course, if you find bugs or other annoyances, please let me know and I will try to sort it out. Some parts are surely a little bit rough and although I call it a 1.0 release I am pretty sure that there are bugs and glitches. Over time the project got much larger than originally intended, so it still is some kind of a big experiment that got out of control :wink:

Please note:
The rights on the games are held by Magnetic Scrolls Ltd, which belongs to Anita Sinclair and Ken Gordon. Their games, sadly enough, have been unavailable for years, so there are very few options left to play the games in a legitimate way. The reason for making the games available was to prevent the loss of the games. Anita and Ken - very nice people indeed - both know the Magnetic Scrolls Memorial and didn’t object to the contents, so I assume that the pages are in their spirit and the availabilty of the materials is tolerated at least. Of course this is not a legal entitlement and obviously all the materials can only be used for personal, strictly non-commercial purposes. If you feel uncomfortable with this and don’t want to be in the legal limbo, please refrain from using the site. For the above reason I am safe as houses that there is no risk in using the site, but what’s foolproof in life? So you have to decide for yourself.

Hope, you enjoy it!

Magnetic Scrolls games
(Andrew Plotkin) #2

Excellent!

#3

Great news! Thanks!

#4

RAGE RIDER THANKS YOU

#5

Thanks!!! My pleasure!

I hope it will further improve with the upcoming updates, although I fear that the experience will stay somewhat quirky on the iPad. The mobile browsers just have too many special “behaviours” that are good for nomal pages, but not well suited for something like this engine. The alternative would have been SDL, but then again this wouldn’t have worked on tablets at all, so I guess this was the reasonable compromise to go…

Stefan

(Peter Piers) #6

Well, as far as tablets go, one could always consider an iOS or Android magnetic scrolls terp. :wink:

#7

Hi Peter,

of course this would be the best solution and with magnetiX and JMagnetic there are codebases available which could provide a good start, but unlike the many z-code interpreters the magnetic interpreter is specially targeted at the original games and doesn’t have much use without the game files.

Stefan

(Peter Piers) #8

However, if you DO have the game files, you have a reason to hanker for a portable way to play them. :wink: Lack of games doesn’t mean lack of interest. I would love to be able to play Magnetic Scrolls games in my iOS device (iPod Touch). Level 9 games, too.

Anyway, I just wanted to make a side note, not hijack the thread. Well done on getting an online terp up.

(jkj yuio) #9

This is fantastic. thanks!

#10

Really cool!
It works perfectly in tablet (Ubuntu Touch) but not for small screens (also UT).

Great work

(jkj yuio) #11

The C/C++ interpreter, magnetic, could be ported to Android. Has anyone done this? if not, i am willing to collaborate on this.

#12

Actually, if the code of magnetic script is released, if not using php, it could be ported nearly untouch to android (or any other platform) in a webview

(jkj yuio) #13

I was thinking more of an open source initiative to make a cross platform codebase. I have been using QtQuick and it supports desktops and mobiles; Windows/Linux/Mac and Android & iOS.

This approach would give a much better app experience than, say a web view. For example, save games, custom UI etc.

#14

I agree. Ubuntu touch is also using QtQuick, it’s a pretty portable framework.
There’s a mix possibility: make load and extras in qt and the main game still in webview. Like this you have the power of qt, still open source of html + javascript + qt and you can still use the game on a website.

But, obviously, it’s an opinion :slight_smile:

(jkj yuio) #15

Indeed, we could have the best of both worlds with this approach.

I’ve been working on my own IF system in Qt, but a huge amount of the Qt code is quite generic. I’ve been planning to open source this anyway, but we could re-purpose the general framework to have a magnetic back end.

I could start putting together a gitlab project for this with the code i have already.

Who else might be interested in getting involved. Would the IFTF be interested, maybe?

#16

Sounds really interesting.
I can’t code but I could give a hand with other things?

(jkj yuio) #17

@cibersheep, thanks for your support.

Right now, I’m travelling in Australia, I’m not back until the week before Xmas. The plan is, I’ll create two open source projects; one for my own IF tech and another for the magnetic IF tech. Then I’ll add people as developers who are interested in contributing; doesn’t have to be code, because there’s lots to do. eg website? documentation? icons? graphics? etc.

need a name for the project and maybe a domain. any ideas?

#18

Good.
I could do icons and probably graphics.

Name? Mmmm… that’s difficult. It might be related to the if, it can start by q (because of Qt) and it should represent the strongest point in you implementation.

  • qMachine (it’s probably taken)
  • qXYZZY (too obvious?)
  • Qungeon (too weird?)
(jkj yuio) #19

I’m now thinking that there should be a single codebase.

There’s basically a front-end and a back-end. The front end is a cross platform GUI written in Qt. The back end can be magnetic or my own IF, or something else …

So the idea is that back-ends are pluggable into the same GUI. This means, the front end could accommodate other IF systems as well. The front-back interface would need to be clearly documented, and back-ends would be separate binaries plus a bundle of assets.

It would mean anyone could plug their IF back end into a graphical form. Qt is great for handling images, sounds and touch-based UI. QtQuick, runs on the GPU and is very slick with images (scrolling, resize etc).

I’ve noticed there’s a lot of text based IF systems out there that could really benefit from the graphical front end.

The back ends would, essentially be, text based binaries, and would trigger graphical features by sending text command messages to the front end.

#20

That sounds really cool!
The pluggable idea is very nice.