AGS 3.0.2 Final 2 - Credit Crunch Edition

Started by Pumaman, Mon 28/04/2008 18:22:53

Previous topic - Next topic

skuttleman

AGS 3.0.2.41

This isn't so much a bug as it is a pain in the ass, but when I'm typing in a script (seems to be any script) and I'm in some function, I'll type a line or two and then the drop down box at the top will switch to "(general definitions)" and autocomplete stops working altogether. I know I'm not typing outside the function, because it all compiles fine. The only way to get autocomplete to start working again (that I have found) is to close the module or global script or room script, and reopen it. Then it'll let me type a line or two of code and ..... repeat ad infinitum.

Is that something that can be fixed?

monkey0506

#141
If you have more than one tab opened at once you can just switch tabs, so long as you're not editing multiple scripts at once (i.e., a header and the script) in which case you would have to save the script.

The reason behind this is that the autocomplete cache only gets updated at certain intervals. This also affects the drop-down list of functions. CJ has tried to come up with a means to accommodate for the changing of the scripts, but updating the entire autocomplete cache every time a character gets typed could cause a lot of slowdown...probably to the point of making typing your scripts impossible!

Shane 'ProgZmax' Stevens

#142
A minor thing:

if you select bool from the new global variable creator, entering in a value of 0 yields:

'The default value '0' is not valid for this type of variable.  Please try again'

XD

Edit:  I can't seem to get POPUPMODAL to work to freeze my game during the intro sequence (just a series of Waits and animations).  The gui is designed to allow you to skip the intro, but the intro plays regardless of what I try while the gui just sits there as the game continues from screen to screen.  I even went so far as to run PauseGame() after the gui is open and it does absolutely nothing (popupmodal should run pausegame anyway).  Every time I try to access it the debugger just says 'game blocked'.  I've tried starting the gui from repeatedly_execute with a keypress (and without) and in the repeatedly_execute of each room of the intro.

Something is definitely strange.


skuttleman

Quote from: monkey_05_06 on Fri 13/06/2008 01:19:52
If you have more than one tab opened at once you can just switch tabs
OK. Thanks.

Quote from: ProgZmax on Fri 13/06/2008 02:12:13
'The default value '0' is not valid for this type of variable.  Please try again'

typing out the word "true" or "false" works for me on booleans.

Cino

Quote from: ProgZmax on Fri 13/06/2008 02:12:13
Edit:  I can't seem to get POPUPMODAL to work to freeze my game during the intro sequence (just a series of Waits and animations).  The gui is designed to allow you to skip the intro, but the intro plays regardless of what I try while the gui just sits there as the game continues from screen to screen.  I even went so far as to run PauseGame() after the gui is open and it does absolutely nothing (popupmodal should run pausegame anyway).  Every time I try to access it the debugger just says 'game blocked'.  I've tried starting the gui from repeatedly_execute with a keypress (and without) and in the repeatedly_execute of each room of the intro.

I struggled with a similar thing some time ago, but finally found a solution:
http://www.adventuregamestudio.co.uk/yabb/index.php?topic=33286.0

Shane 'ProgZmax' Stevens

#145
Yeah, I know you can work around it, I just found it odd that popupmodal doesn't follow this behavior already.  I've never really needed it until now, which is why I didn't discover it earlier :).  Also, that method is not compatible with a gui that you need to be able to use since it will freeze the mouse and everything else.

Dualnames

And another bug..not so but whatever you might wanna know about it. I import a module i quit the game , without saving(this could happen if the pc crashed so you might really want to fix this one) so when i open the project again I get an error that it can't find module.
So how about we browse for the missing module
or something?

About the comment thing said in several posts before it's that in AGS 3.0 if you commented script header this way /* */ if below the */ there was nothing but that Int global variable the global script got commented so it didn;t work.
Worked on Strangeland, Primordia, Hob's Barrow, The Cat Lady, Mage's Initiation, Until I Have You, Downfall, Hunie Pop, and every game in the Wadjet Eye Games catalogue (porting)

Pumaman

QuoteSince I didn't spot it in the release notes, I thought I might mention that SCUMM VERBCOIN GUI v1.5.4 has been up a while now; You might want to include the updated template

Thanks, I didn't spot that. I'll include it next time I do a build.

QuoteThis isn't so much a bug as it is a pain in the ass, but when I'm typing in a script (seems to be any script) and I'm in some function, I'll type a line or two and then the drop down box at the top will switch to "(general definitions)" and autocomplete stops working altogether.

Yeah, this is due to the way autocomplete tracks the end of the function, and has always been like this. I need to spend some time on it to sort it out properly.
As monkey says, you can get around it by just swiching to another tab and then switching back, which will refresh autocomplete.

Quote
if you select bool from the new global variable creator, entering in a value of 0 yields:

'The default value '0' is not valid for this type of variable.  Please try again'

This is by design -- valid values for bool are "true" and "false". Although the script will let you set a bool to 0, it's not something I want to encourage by letting people do it in the GUI editor.

QuoteI can't seem to get POPUPMODAL to work to freeze my game during the intro sequence (just a series of Waits and animations).  The gui is designed to allow you to skip the intro, but the intro plays regardless of what I try while the gui just sits there as the game continues from screen to screen.

What exactly is continuing to run while the GUI is displayed?
The PauseGame command (and therefore popup modal GUIs) prevents movement and animations from being processed, but game cycles continue to run. Therefore if you have some script that does something like:

Wait(50);
player.ChangeRoom(4);

it will still continue to run. The only difference will be if you have a blocking animation or walk, since this will never complete while the game is paused.

QuoteAnd another bug..not so but whatever you might wanna know about it. I import a module i quit the game , without saving(this could happen if the pc crashed so you might really want to fix this one) so when i open the project again I get an error that it can't find module.

If you do this, you should get an extra warning when you close the editor, telling you that because you've imported a module it may not work properly if you don't save it. I think that should be enough warning to people.

QuoteAbout the comment thing said in several posts before it's that in AGS 3.0 if you commented script header this way /* */ if below the */ there was nothing but that Int global variable the global script got commented so it didn;t work.

Ah ok, so it's working correctly in the latest version?

Shane 'ProgZmax' Stevens

QuoteThis is by design -- valid values for bool are "true" and "false". Although the script will let you set a bool to 0, it's not something I want to encourage by letting people do it in the GUI editor.

I'm not sure why you'd want to discourage something that's been done by programmers for years and years and is in no way harmful.  A boolean is a true or false, on or off, 1 or 0 condition by design.  But it's your call :).


QuoteWhat exactly is continuing to run while the GUI is displayed?

Say/SayAt/FadeOut calls still go through as well.  Would it be possible to modify or at least add another type to guis to freeze EVERYTHING except themselves and mouse control?  Everything would include processing Waits,changerooms,animations, anything except gui scripts, mouse movement and control and keypresses.

GarageGothic

Quote from: ProgZmax on Fri 13/06/2008 23:10:17
QuoteThis is by design -- valid values for bool are "true" and "false". Although the script will let you set a bool to 0, it's not something I want to encourage by letting people do it in the GUI editor.
I'm not sure why you'd want to discourage something that's been done by programmers for years and years and is in no way harmful.  A boolean is a true or false, on or off, 1 or 0 condition by design.  But it's your call :).

Perhaps the editor could automatically correct 0 to false and 1 to true so that the stored values will be in the correct format, but still letting the developer save a little time?

naltimari

Quote from: ProgZmax on Fri 13/06/2008 23:10:17
Say/SayAt/FadeOut calls still go through as well.  Would it be possible to modify or at least add another type to guis to freeze EVERYTHING except themselves and mouse control?  Everything would include processing Waits,changerooms,animations, anything except gui scripts, mouse movement and control and keypresses.

I agree that a 'modal' dialog should 'freeze' code execution as soon as 'visible' is set to true. In my game, I have a gui dialog that shows up now and then, presenting the user with some options. Depending on which option he picks, the game would do something different.

So, I had to come up with the 'infinite loop approach' to halt the script. The solution is not very pretty, because it can't be transformed into a module or something more 'global'. Whenever i need to call this dialog, i have to cut&paste code...  :-\

Electroshokker

#151
*bug report*

dynamic sprite tinting colors differently than object/character tinting

when I do something simple, like:

background.Tint(0, 0, 0, 50, 0); //using dynamic sprite
SetAmbientTint(0, 0, 0, 50, 0);

the objects and characters "stick out" in the resulting screen qua coloring.

(btw, any chance for a RemoveAmbientTint() function?)

GarageGothic

Quote from: Electroshokker on Sat 14/06/2008 10:34:00(btw, any chance for a RemoveAmbientTint() function?)

From the help file:
QuoteTo turn it off, call this command again but pass the saturation as 0.

Lt. Smash

#153
bug found

Code: ags
Mouse.ChangeModeView(eModeWait, -1);
does not stop cursor from animating (as explained in the help), it crashes game.


[edit]
fixed typo.

@skuttleman: It was just a typo. The crash occours with ChangeModeView.

skuttleman

Quote from: Lt. Smash on Sat 14/06/2008 13:48:39
bug found

Code: ags
Mouse.ChangeModeGraphic(eModeWait, -1);
does not stop cursor from animating (as explained in the help), it crashes game.

It's supposed to be: ChangeModeView(eModeWait, -1);

LimpingFish



I'm always the last to get errors(!). No version of 3.0. will run.

Vista SP1, NET 3.5.

Halp!
Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

skuttleman

This seems to be a bug, but I get no error. When I try to "make template from this game" in 3.0.2, it asks me for a name and then says it completed successfully, but it doesn't make a template file. Works fine in 3.0.1.

freshpaint

Got the following while flipping between editing a room and editing the script for the room.  Was trying to use dropdown list for room to find code I'd just written for an animation.  Editor didn't exit, it just gave this message and let me go on with editing the room.

Error: startIndex cannot be larger than length of string.
Parameter name: startIndex
Version: AGS 3.0.2.41

System.ArgumentOutOfRangeException: startIndex cannot be larger than length of string.
Parameter name: startIndex
   at System.String.InternalSubStringWithChecks(Int32 startIndex, Int32 length, Boolean fAlwaysCopy)
   at AGS.Editor.ScintillaWrapper.GetPreviousPathedExpression(Int32 startAtPos)
   at AGS.Editor.ScintillaWrapper.ParsePreviousExpression(Int32 startAtPos, String& charactersAfterDot, Boolean& staticAccess, Boolean& isThis)
   at AGS.Editor.ScintillaWrapper.GetFullTypeNameAtPosition(Int32 charIndex)
   at AGS.Editor.ScintillaWrapper.GetFullTypeNameAtCursor()
   at AGS.Editor.ScriptEditor.OnGetHelpKeyword()
   at AGS.Types.EditorContentPanel.get_HelpKeyword()
   at AGS.Editor.Components.HelpCommandsComponent.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.HandleMouseUp(MouseEventArgs 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.ToolStrip.OnMouseUp(MouseEventArgs mea)
   at System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ToolStrip.WndProc(Message& m)
   at System.Windows.Forms.ToolStripDropDown.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)

Electroshokker

#158
correction: only the objects aren't tinted properly with ambient tinting (they're simply not tinted at all)

characters are tinted just fine. (I'm in 32-bit mode)

If I tint the objects manually (object.tint) it works the way it should.

Quote from: GarageGothic on Sat 14/06/2008 12:20:52
From the help file:
QuoteTo turn it off, call this command again but pass the saturation as 0.

Thx! Can't believe I missed that!


btw, Chris: v1.6.0 of the scumm verbcoin template is up

DoorKnobHandle

#159
Got this when I deleted seven empty GUI buttons one after the other by selecting them through the list, then re-clicking on them and hitting DEL:

Quote from: error
Error: Object reference not set to an instance of an object.
Version: AGS 3.0.1.35

System.NullReferenceException: Object reference not set to an instance of an object.
   at AGS.Editor.GUIEditor.bgPanel_MouseMove(Object sender, MouseEventArgs e)
   at System.Windows.Forms.Control.OnMouseMove(MouseEventArgs e)
   at System.Windows.Forms.Control.WmMouseMove(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.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)

Can't recreate it now, though.

SMF spam blocked by CleanTalk