Closed text22 closed 6 years ago
Hello.
Sorry to hear you're having troubles.
If you post a link to the files you have in your game's folder, I will see what I can do.
Note that I am just a Quest user. So I can't make any promises, but I will try my best to help out.
It actually sounds more like a user settings issue than a problem with the code to me, but I may something. You never know.
I do have one question:
Do other games work?
YES, All of my other games work. here is the file: Problem.zip
I'm investigating this right now.
Which Windows are you running, and which version of Quest?
It's something with Quest's latest beta.
It opens and runs for me with quest580beta1, but that is no longer listed, so I advise dropping back to 5.7.2 for now. The added features shouldn't allow you to do anything extra in a gamebook, anyway.
Sorry about that. I'm trying to find what change causes this. If I can't, Pixie probably can.
Here's a link to Quest 5.7.2:
Found a link to 5.8.0beta1, which loads your game for me:
https://github.com/textadventures/quest/releases/download/5.8.0-beta.1/quest580beta1.exe
Let me know if this works (or doesn't work), please.
In Quest 5\Core\Languages\EditorEnglish.aslx
These lines of code (at the beginning) are preventing the editor from opening a gamebook (but not a text adventure):
EDITED
<dynamictemplate name="DevModeErrorCantFindObject">"The object with the name '" + text + "' cannot be found."</dynamictemplate>
<dynamictemplate name="DevModeErrorCantFindAttribute">"The attribute with the name '" + text + "' cannot be found."</dynamictemplate>
Removed misinformation.
UPDATE
I uninstalled 580beta2. I downloaded it again. I installed that, and gamebooks work.
So, I decided to delete quest\ from my hard drive and clone it again as if it were new, to see if that solved the same issue with the current build.
When I build what's currently in the repo, the gamebooks will not open in the editor. So, just because I don't trust myself, I removed all of the code from my recent commits, but that didn't fix it. EDIT So, I added all my stuff back in.
Next, I deleted the DevMode templates from English.aslx (again; this is a newly cloned repo), and the gamebook opened in the editor again, just like before
...but there is another problem. This is what a new gamebook with nothing added prints when I press 'Play':
This is page 1. Type a description here, and then create links to other pages below.
Error running script: Cannot foreach over '' as it is not a list
Error running script: Error compiling expression 'Instr(text, "{")': FunctionCallElement: Could find not function 'Instr(Object, String)'
Error running script: Cannot foreach over '' as it is not a list
Error running script: Error compiling expression 'Instr(text, "{")': FunctionCallElement: Could find not function 'Instr(Object, String)'
The file GamebookCore.aslx has its own defaultgame
object.
I added the new text processor game attributes to it, and the gamebook is functional.
1. Remove the DevMode templates from EditorEnglish.aslx (I also removed DevMode.aslx from the includes in Core.aslx, but I don't know if this step is necessary.)
2. Add the text processor attribute to defaultgame
in GamebookCore.aslx.
These two dynamic templates are the problem.
<dynamictemplate name="DevModeErrorCantFindObject">"The object with the name '" + text + "' cannot be found."</dynamictemplate>
<dynamictemplate name="DevModeErrorCantFindAttribute">"The attribute with the name '" + text + "' cannot be found."</dynamictemplate>
I could also make normal templates out of it. This is not so important if you are dynamic. Wouldn't that be a better solution? Or isn't it the only problem?
P.S.: I think discussing it here is more appropriate. I've been looking in here more often now. Promised. ^^
I moved the DevMode command templates to English.aslx. (I guess the editor can't handle dynamic templates in gamebook mode?)
Anyway, everything runs smoothly this way, and the two pull requests have been submitted.
The first thing I did was change them to normal templates, but once I found I could simply move the command stuff to English.aslx (which is where I think it belongs anyway), everything worked out perfectly.
I've been looking in here more often now.
I am "Watching" this repository, so I get an email each time something happens (including Issues, Pull Requests, and commits). It seems easier than remembering to check in.
@SoonGames
It's your code, so don't let me do something you don't like with it. I was just finding a good, clean, quick fix.
If you'd like to handle it differently, I can delete my pull requests and defer to you.
It's your code, so don't let me do something you don't like with it. I was just finding a good, clean, quick fix. If you'd like to handle it differently, I can delete my pull requests and defer to you.
No. That's all right. As long as it works. ;-) I was just desperately looking for a way to quote. ^^
That's right. You could move all commands to be executed in the command field (i.e. all templates from DevMode without "Editor" in front of it) to English.aslx or Deutsch.aslx.
Oh, yeah. You did. Perfect.
The German.aslx or EditorGerman.aslx would have to be changed accordingly. Are you gonna do this or can I do it fast?
The German.aslx or EditorGerman.aslx would have to be changed accordingly. Are you gonna do this or can I do it fast?
You better do it. (I wish I could sprechen sie Deutsch!)
PS
I also added a template called EditorGameEnableDevMode
to EditorEnglish for a checkbox in the game's features which enables DevMode.
If this is not checked, the DevMode tab will be hidden.
See pull requests:
https://github.com/textadventures/quest/pull/975
I also added a template called EditorGameEnableDevMode to EditorEnglish for a checkbox in the game's features which enables DevMode.
Yeah, that's all right.
Can you send me the file you fixed?
I changed a few different files, and they are all sort of in GitHub limbo at the moment.
ThePix will either merge them or apply his own (better and more efficient) fix soon.
I uninstalled Quest, downloaded the quest580beta2 installer again, installed that, and everything worked fine.
If that doesn't work for you, and you want to run the beta version, I'd try to download and install quest580beta1:
https://github.com/textadventures/quest/releases/download/5.8.0-beta.1/quest580beta1.exe
...or, to be safe, you could just run the current release:
https://github.com/textadventures/quest/releases/download/5.7.2/quest572.exe
You are running Quest 580beta2, correct?
That was the only version of Quest I had problems opening your game with at first, but I did not have the image files, so Quest ignored them once I got Quest running. So, there still could be an issue with an image you're using, and I just happened to find a different bug while investigating your problem.
I have merged the push requests, and it works for me now. I will put up a new beta in a couple of days.
THANKS!!!
I have been working on a game called (Mario) The Music Box (GameBook Edition) and now it wont let me edit it. When i open it The Screen is grey and it says ,"System.NotSupportedException: No imaging component suitable to complete this operation was found. ---> System.Runtime.InteropServices.COMException: The component cannot be found. (Exception from HRESULT: 0x88982F50) --- End of inner exception stack trace --- at System.Windows.Media.Imaging.BitmapDecoder.SetupDecoderFromUriOrStream(Uri uri, Stream stream, BitmapCacheOption cacheOption, Guid& clsId, Boolean& isOriginalWritable, Stream& uriStream, UnmanagedMemoryStream& unmanagedMemoryStream, SafeFileHandle& safeFilehandle) at System.Windows.Media.Imaging.BitmapDecoder.CreateFromUriOrStream(Uri baseUri, Uri uri, Stream stream, BitmapCreateOptions createOptions, BitmapCacheOption cacheOption, RequestCachePolicy uriCachePolicy, Boolean insertInDecoderCache) at System.Windows.Media.Imaging.BitmapImage.FinalizeCreation() at System.Windows.Media.Imaging.BitmapImage.EndInit() at TextAdventures.Quest.EditorControls.FileDropDown.RefreshFileList() at TextAdventures.Quest.EditorControls.FileControl.Populate(IEditorData data) at TextAdventures.Quest.EditorControls.ElementEditor.Populate(IEditorData data) at TextAdventures.Quest.WPFElementEditor.Populate(IEditorData data) at TextAdventures.Quest.Editor.ShowEditor(String key) at TextAdventures.Quest.Editor.ctlTree_SelectionChanged(String key) at TextAdventures.Quest.EditorControls.WFEditorTree.ChangeSelection(String key) at TextAdventures.Quest.EditorControls.WFEditorTree.SelectCurrentTreeViewItem() at TextAdventures.Quest.EditorControls.WFEditorTree.ctlTreeView_AfterSelect(Object sender, TreeViewEventArgs e) at System.Windows.Forms.TreeView.OnAfterSelect(TreeViewEventArgs e) at System.Windows.Forms.TreeView.TvnSelected(NMTREEVIEW* nmtv) at System.Windows.Forms.TreeView.WmNotify(Message& m) at System.Windows.Forms.TreeView.WndProc(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)" I am so confused. Before it all started i was trying to drag a image into my quest. I will send you the quest project and the image so you can fix it. I've been working hard on the project. HELP!!!