Hi whimsy, I'm having a very unique problem at the moment
I'm trying to create an xml deserializer in the x3, and I whilst making the script, I needed to do something like this:
$string = '<'
But doing that in the exscriptor causes the following issue:
(When you try to open it, I suspect it's because it does not convert it to the <)
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
X3_Script_Editor.XSE_FileReadErrorException: Error while trying to open script file: C:\Program Files (x86)\EGOSOFT\X3 Terran Conflict\scripts\Mod\svc z\lib.deserialize ('Found but could not read from script file: C:\Program Files (x86)\EGOSOFT\X3 Terran Conflict\scripts\Mod\svc z\lib.deserialize ('Name cannot begin with the ''' character, hexadecimal value 0x27. Line 15, position 83.')') ---> X3_Script_Editor.XSE_FileReadErrorException: Found but could not read from script file: C:\Program Files (x86)\EGOSOFT\X3 Terran Conflict\scripts\Mod\svc z\lib.deserialize ('Name cannot begin with the ''' character, hexadecimal value 0x27. Line 15, position 83.') ---> System.Xml.XmlException: Name cannot begin with the ''' character, hexadecimal value 0x27. Line 15, position 83.
at System.Xml.XmlTextReaderImpl.Throw(Exception e)
at System.Xml.XmlTextReaderImpl.Throw(String res, String[] args)
at System.Xml.XmlTextReaderImpl.Throw(Int32 pos, String res, String[] args)
at System.Xml.XmlTextReaderImpl.ParseQName(Boolean isQName, Int32 startOffset, Int32& colonPos)
at System.Xml.XmlTextReaderImpl.ParseElement()
at System.Xml.XmlTextReaderImpl.ParseElementContent()
at System.Xml.XmlTextReaderImpl.Read()
at System.Xml.XmlLoader.LoadNode(Boolean skipOverWhitespace)
at System.Xml.XmlLoader.LoadDocSequence(XmlDocument parentDoc)
at System.Xml.XmlLoader.Load(XmlDocument doc, XmlReader reader, Boolean preserveWhitespace)
at System.Xml.XmlDocument.Load(XmlReader reader)
at System.Xml.XmlDocument.LoadXml(String xml)
at X3_Script_Editor.Decompiler.openScript(String scriptName, String path)
--- End of inner exception stack trace ---
at X3_Script_Editor.Decompiler.openScript(String scriptName, String path)
--- End of inner exception stack trace ---
at X3_Script_Editor.Decompiler.decompile(String filename, Int32 gameMode)
at X3_Script_Editor.Editor.LoadFiles(String[] fileNames)
at X3_Script_Editor.Editor.menuOpen(Object sender, EventArgs e)
at System.Windows.Forms.MenuItem.OnClick(EventArgs e)
at System.Windows.Forms.MenuItem.MenuItemData.Execute()
at System.Windows.Forms.Command.Invoke()
at System.Windows.Forms.Command.DispatchID(Int32 id)
at System.Windows.Forms.Control.WmCommand(Message& m)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
at System.Windows.Forms.ContainerControl.WndProc(Message& m)
at System.Windows.Forms.Form.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)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/Windows/Microsoft.NET/Framework/v2.0.50727/mscorlib.dll
----------------------------------------
X3 Script Editor V3
Assembly Version: 1.0.3806.32021
Win32 Version: 1.0.3806.32021
CodeBase: file:///F:/Downloads/X3/X3TC%20Tools/Exscriptor/Exscriptor.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Windows.Forms/2.0.0.0__b77a5c561934e089/System.Windows.Forms.dll
----------------------------------------
System
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System/2.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
System.Drawing
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Drawing/2.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll
----------------------------------------
System.Xml
Assembly Version: 2.0.0.0
Win32 Version: 2.0.50727.4927 (NetFXspW7.050727-4900)
CodeBase: file:///C:/Windows/assembly/GAC_MSIL/System.Xml/2.0.0.0__b77a5c561934e089/System.Xml.dll
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
<?xml version="1.0" standalone="yes"?>
<?xml-stylesheet href="x2script.xsl" type="text/xsl"?>
<!--Produced externally by the Exscriptor-->
<script>
<name>lib.xml.deserialize</name>
<version>74</version>
<engineversion>44</engineversion>
<description />
<arguments>
<argument index="0" name="xmlString" type="Var/String" desc="Input Xml String" />
</arguments>
<sourcetext>
<line linenr="001" indent=""> </line>
<line linenr="002" indent=""> </line>
<line linenr="003" indent=""><var>$special.open = </var><text></text><var>'<' </var><text></text></line>
Browsers fail to load the xaml on that line 003 as well
Although... oddly enough, if I changed it to teh &l;t; it works, EVEN THOU, the greater than sign is still used on line 4 (and I did not replace it )
<line linenr="003" indent=""><var>$special.open = </var><text></text><var>'<' </var><text></text></line>
<line linenr="004" indent=""><var>$special.close = </var><text></text><var>'>' </var><text></text></line>
After a bit of testing
When you save scripts using the ingame SE it does this:
<line linenr="003" indent=""><var>$special.Open = </var><var>'<'</var></line>
<line linenr="004" indent=""><var>$special.Close = </var><var>'>'</var></line>