I got the unhandled error below when saving a room. I poked around and it appears that the error occurs with a hotspot description > 29 chars.
I like to make these descriptive or funny since they're the @HOTSPOT@ text that the player sees...so a longer limit might be useful.
Thanks
-Jason
======
Error: String is too long: Pile of Q-Tip Brand Cotton Swabs
Version: AGS 3.0.0.23
AGS.Types.AGSEditorException: String is too long: Pile of Q-Tip Brand Cotton Swabs ---> AGS.Types.AGSEditorException: String is too long: Pile of Q-Tip Brand Cotton Swabs
at ConvertStringToCharArray(String clrString, SByte* textBuffer, Int32 maxLength)
at save_crm_file(Room room)
at AGS.Native.NativeMethods.SaveRoomFile(Room roomToSave)
at AGS.Editor.Components.RoomsComponent.SaveRoomOnThread(Object parameter)
at AGS.Editor.BusyDialog.RunHandlerOnThread()
--- End of inner exception stack trace ---
at AGS.Editor.BusyDialog.Show(String message, ProcessingHandler handler, Object parameter)
at AGS.Editor.Components.RoomsComponent.SaveRoomButDoNotShowAnyErrors(Room room, CompileMessages errors, String pleaseWaitText)
at AGS.Editor.Components.RoomsComponent.SaveRoomAndShowAnyErrors(Room room)
at AGS.Editor.Components.RoomsComponent.AGSEditor_PreSaveGame(PreSaveGameEventArgs evArgs)
at AGS.Editor.AGSEditor.PreSaveGameHandler.Invoke(PreSaveGameEventArgs evArgs)
at AGS.Editor.AGSEditor.SaveGameFiles()
at AGS.Editor.Components.FileCommandsComponent.CommandClick(String controlID)
at AGS.Editor.GUIController._mainForm_OnMenuClick(String menuItemID)
at AGS.Editor.MainMenuManager.MenuEventHandler(Object sender, EventArgs e)
at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
at System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
at System.Windows.Forms.ToolStripMenuItem.ProcessCmdKey(Message& m, Keys keyData)
at System.Windows.Forms.ToolStripManager.ProcessShortcut(Message& m, Keys shortcut)
at System.Windows.Forms.ToolStripManager.ProcessCmdKey(Message& m, Keys keyData)
at System.Windows.Forms.ContainerControl.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.Form.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.ContainerControl.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.ContainerControl.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.ContainerControl.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.Control.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.TextBoxBase.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.PropertyGridInternal.PropertyGridView.GridViewEdit.ProcessCmdKey(Message& msg, Keys keyData)
at System.Windows.Forms.Control.PreProcessMessage(Message& msg)
at System.Windows.Forms.Control.PreProcessControlMessageInternal(Control target, Message& msg)
at System.Windows.Forms.Application.ThreadContext.PreTranslateMessage(MSG& msg)
=====
As a workaround, you could try using the Description module to display the names, or code something yourself with GetLocationName
Hmm, I'd forgotten about that limit. Annoying I agree, I'll see what I can do.