As some of my final tests for the Bisquixe interpreter and extension, I’ve asked a few authors of games that use heavy multimedia if I can port their games to work online.
One such game is Transparent, by Hanon Ondricek. This game was entered in IFComp 2014, taking 11th place.
It uses 5 images and 60 different sounds.
Using Bisquixe, I was able to update the game to work with online interpreters. Unfortunately, the original sound and image files were lost, but with the help of some forum members, I was able to extract the files from the gblorb. I sent it to Hanon, who made additional modifications and uploaded to the itch link above.
Here are the only changes I had to do:
-Include Simple Multimedia Effects by Mathbrush.
-Release along with a "Bisquixe" interpreter.
-Initializing all the images and sound:
Sound and image stuff
When play begins:
add-audio "snd7.mp3" with id 7;
add-audio "snd8.mp3" with id 8;
add-audio "snd9.mp3" with id 9;
add-audio "snd10.mp3" with id 10;
add-audio "snd11.mp3" with id 11;
add-audio "snd12.mp3" with id 12;
add-audio "snd13.mp3" with id 13;
add-audio "snd14.mp3" with id 14;
add-audio "snd15.mp3" with id 15;
add-audio "snd16.mp3" with id 16;
add-audio "snd17.mp3" with id 17;
add-audio "snd18.mp3" with id 18;
add-audio "snd19.mp3" with id 19;
add-audio "snd20.mp3" with id 20;
add-audio "snd21.mp3" with id 21;
add-audio "snd22.mp3" with id 22;
add-audio "snd23.mp3" with id 23;
add-audio "snd24.mp3" with id 24;
add-audio "snd25.mp3" with id 25;
add-audio "snd26.mp3" with id 26;
add-audio "snd27.mp3" with id 27;
add-audio "snd28.mp3" with id 28;
add-audio "snd29.mp3" with id 29;
add-audio "snd30.mp3" with id 30;
add-audio "snd31.mp3" with id 31;
add-audio "snd32.mp3" with id 32;
add-audio "snd33.mp3" with id 33;
add-audio "snd34.mp3" with id 34;
add-audio "snd35.mp3" with id 35;
add-audio "snd36.mp3" with id 36;
add-audio "snd37.mp3" with id 37;
add-audio "snd38.mp3" with id 38;
add-audio "snd39.mp3" with id 39;
add-audio "snd40.mp3" with id 40;
add-audio "snd41.mp3" with id 41;
add-audio "snd42.mp3" with id 42;
add-audio "snd43.mp3" with id 43;
add-audio "snd44.mp3" with id 44;
add-audio "snd45.mp3" with id 45;
add-audio "snd46.mp3" with id 46;
add-audio "snd47.mp3" with id 47;
add-audio "snd48.mp3" with id 48;
add-audio "snd49.mp3" with id 49;
add-audio "snd50.mp3" with id 50;
add-audio "snd51.mp3" with id 51;
add-audio "snd52.mp3" with id 52;
add-audio "snd53.mp3" with id 53;
add-audio "snd54.mp3" with id 54;
add-audio "snd55.mp3" with id 55;
add-audio "snd56.mp3" with id 56;
add-audio "snd57.mp3" with id 57;
add-audio "snd58.mp3" with id 58;
add-audio "snd59.mp3" with id 59;
add-audio "snd60.mp3" with id 60;
add-audio "snd61.mp3" with id 61;
add-audio "snd62.mp3" with id 62;
add-audio "snd63.mp3" with id 63;
add-audio "snd64.mp3" with id 64;
add-audio "snd65.mp3" with id 65;
add-audio "snd66.mp3" with id 66;
add-audio "snd67.mp3" with id 67;
let temp be the glulx resource id of Figure of Boxcover;
add-image "transparent3.jpg" with alttext "The logo with the word 'Transparent' in blurry green nightvision with a flash of light behind it." with id temp with width 700 with height 700;
let temp be the glulx resource id of Figure of Note;
add-image "note.jpg" with alttext "A note that reads 'Fusebox: from front door go northwest to stairs, south to mission control, then east till you hit the kitchen. Go down cellar steps - be careful! - box at bottom.'" with id temp with width 523 with height 534;
let temp be the glulx resource id of Figure of drawing;
add-image "drawing.jpg" with alttext "A child's crayon drawing of a stick figure inside a heavy circular black sun with single line rays emanating from it - or perhaps it's a person lying at the bottom of a well? Across the bottom, carefully lettered in different colors, are the words 'eat you'." with id temp with width 540 with height 528;
let temp be the glulx resource id of Figure of map;
add-image "manormap.jpg" with alttext "A simplified map of the manor and grounds." with id temp with width 646 with height 505;
import-google-fonts "Spectral&family=Spectral+SC";
If you notice, I didn’t include any code for displaying sound or images.
That’s because Bisquixe just uses Inform’s built-in images and sound, and works with image and sound extensions. The only new thing it does it enabling the pre-existing things to work online.
I also added some CSS to Transparent. I opted to have the CSS go into effect after the sound change. I could do it right when it started, but that can cause a flicker.
Here is the css:
css-set-fast ".WindowFrame;color;lightseagreen";
css-set-fast ".WindowFrame;background-color;black";
css-set-fast ".GridWindow;background-color;#101010";
css-set-fast ".LineInput;color;lightseagreen";
css-set-fast ".Style_input;color;lightseagreen";
css-set-slow ".Style_input;color;lightseagreen";
css-set-fast ".ImageInlineCenter;centering;";
css-set-fast ".Style_normal;font-family;Spectral,serif";
css-set-fast ".Style_header;font-family;Spectral SC,serif";
css-set-fast ".Style_subheader;font-family;Spectral SC,serif";
css-set-fast ".Style_emphasized;font-family;Spectral,serif";
css-set-fast ".Style_input;font-family;Spectral,serif";
css-set-fast ".coverimage; display; none";
css-set-fast ".links; display; none";
css-set-fast "#gameport; left; 20%";
css-set-fast "#gameport; right; 20%";
css-set-fast ".play; background;black";
There was one bug introduced through all this, but it’s not due to Bisquixe. The version of Inform I compiled on has a bug with Yes/No questions crashing if certain glulx events happen while they’re up, unless a paragraph break is printed after them. So I had to go through manually and add paragraph breaks after yes/no questions and ‘press any key’.
However, one slipped through that I saw just now; if you type anything other than ‘Yes’ or ‘No’ at the opening screen, the game crashes due to that bug. The bug has been documented here: FatalError in YesOrNo. I can fix it on an individual basis by adding a paragraph break, but I’d rather wait to see if anyone reports other errors as well.