AGS 2.8 alpha 8 preview

Started by Pumaman, Mon 15/01/2007 23:24:45

Previous topic - Next topic

Rui 'Trovatore' Pires

#60
Quote* Removed the toolbox in the GUI editor and moved the icons to the toolbar

Ah, it's so much better now! Thanks a lot! :D

EDIT - I see you've changed GUI Buttons' "x" and "y" names to "left" and "top". I wonder if it might not be confusing... ah well, I'll see what other people think.

Say, I had a couple of buttons very carefully placed behind some labels, and it seems their position has changed a bit. Their *coordinates* are the same in both the new build and the last version... but in the editor they are clearly in different places. I have a label with 5 words, and have 5 buttons behind each word in the label, and now they don't line up anymore. Could it be related in any way to this new editor's font processing, or something? Does it process fonts the same way as the old one did?

EDIT 2 - Double-clicking on buttons no longer brings up the relevant bit on the script, is this yet to implement or are you planning to do away with it? Also, it seems that no button/script association was imported correctly, all the OnClick events for my buttons are empty.

EDIT 3 - Oh, forgot - for me, everything compiles nicely, but I'm not really taxing AGS with this project in any way except maybe graphically. Also, the autocomplete looks a lot fancier, neater, and helpfull-er.

EDIT 4 - Are we supposed to be able to open AGF files? Because trying to open the Game.agf file that got made after I imported my game came up with the following error:

Quote---------------------------
Adventure Game Studio
---------------------------
An unexpected error occurred. Please note down the following information and contact CJ.



System.IO.FileNotFoundException: Could not find file 'C:\Documents and Settings\rui\Ambiente de trabalho\ags28alpha3\Brass Tacks\Module0.ash'.

File name: 'C:\Documents and Settings\rui\Ambiente de trabalho\ags28alpha3\Brass Tacks\Module0.ash'

   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)

   at System.IO.FileStream.Init(String path, FileMode mode, FileAccess access, Int32 rights, Boolean useRights, FileShare share, Int32 bufferSize, FileOptions options, SECURITY_ATTRIBUTES secAttrs, String msgPath, Boolean bFromProxy)

   at System.IO.FileStream..ctor(String path, FileMode mode, FileAccess access, FileShare share, Int32 bufferSize, FileOptions options)

   at System.IO.StreamReader..ctor(String path, Encoding encoding, Boolean detectEncodingFromByteOrderMarks, Int32 bufferSize)

   at System.IO.StreamReader..ctor(String path)

   at AGS.Types.Script..ctor(XmlNode node)

   at AGS.Types.Scripts..ctor(XmlNode node)

   at AGS.Types.Game.FromXml(XmlNode node)

   at AGS.Editor.AGSEditor.LoadGameFile(String fileName)

   at AGS.Editor.Components.FileCommandsComponent.LoadGameFromDisk(String gameToLoad)

   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.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)
---------------------------
OK   
---------------------------
Reach for the moon. Even if you miss, you'll land among the stars.

Kneel. Now.

Never throw chicken at a Leprechaun.

Pumaman

QuoteEDIT - I see you've changed GUI Buttons' "x" and "y" names to "left" and "top". I wonder if it might not be confusing... ah well, I'll see what other people think.

Yeah, this is just to be more "standard" since it's the way that the latest Visual Studio-type products phrase things. They can always be renamed back if they cause confusion.

QuoteTheir *coordinates* are the same in both the new build and the last version... but in the editor they are clearly in different places. I have a label with 5 words, and have 5 buttons behind each word in the label, and now they don't line up anymore. Could it be related in any way to this new editor's font processing, or something? Does it process fonts the same way as the old one did?

Hmm, are you using TTF fonts? I think the TTF sizing might be off in this editor, I'll need to look into it.

QuoteEDIT 2 - Double-clicking on buttons no longer brings up the relevant bit on the script, is this yet to implement or are you planning to do away with it? Also, it seems that no button/script association was imported correctly, all the OnClick events for my buttons are empty.

Thanks for reporting these, I'll look at them.

QuoteEDIT 4 - Are we supposed to be able to open AGF files? Because trying to open the Game.agf file that got made after I imported my game came up with the following error:

Well spotted, thanks, it seems module scripts aren't being saved after import (neither is the global script header, for that matter). I'll look into it.

Rui 'Trovatore' Pires

#62
QuoteHmm, are you using TTF fonts? I think the TTF sizing might be off in this editor, I'll need to look into it.

Ayuh, it was a TTF font.

As for everything else, glad to have been of service, as always. :)

EDIT -

Quote3. Interactions for inventory and characters will be converted to script functions. (There is no interaction editor now; instead, the "Events" pane of the property window is where you'll find the relevant bits). Do the generated scripts look reasonable?

I'd forgotten to check this. Looks great to me, but I'd like to point out that, similar to the GUI buttons, there are no associations - I mean, the interactions that I HAD defined still appear on the field, but when I click the elipsis button it creates a brand new section on the script. Not only that, by scrolling only a few lines up I can see the lines that I HAD programmed for that interaction. So it's still there, just not associated.
Reach for the moon. Even if you miss, you'll land among the stars.

Kneel. Now.

Never throw chicken at a Leprechaun.

Ghost

#63
It seems to be quite robust. I imported a 2.72 project and played around with it, "ran" it, and everything a normal user would do worked fine. Script compiling caused hardly any trouble even thouhg there is a whole jumple of plugins in that game- SSH's "multiple idle views" and "animated inventory", plus a lot of scripting to handle inventory clicks. The beta took it all with just some minor corrections.

I must say that I really like the way everything works now; it IS a big change in look and feel, but the new design is functional, not just modernised, and the page switching alone is a great thing. It's like watching the original Star Trek episodes, and then watching Next GenÃ,  ;DÃ,  ;D

Two things I'd just like to write down, even though this is an early stage alpha and all: Please make AGS remember its window state, so that it starts maximised when we left it that way.
Plus, why not keep the old logo screen? The new one looks a bit awkward- that's just my personal oppinion, thoughÃ,  ;D

Keep up the great work!

Gregjazz

Right off the bat, I love all the new art, the opening screen as well as the new editor icons!

Kweepa

I installed perforce at home (it's free for up to two users on one code depot) to test out the SCC integration.
It nearly worked, but the missing asc and ash files caused the initial submit to fail.

Also, it seems the editor can't work with locked files (submitting files to perforce locks them):

Code: ags

System.UnauthorizedAccessException: Access to the path 'C:\dev\ags28alpha3\Maya\room1.asc' is denied.
   at AGS.Editor.BusyDialog._timer_Tick(Object sender, EventArgs e)


Are you planning to allow that, and automatically check them out when editing starts?

Awesome stuff though. Development will be much more comfortable (for me) with multiple windows and SCC!
Still waiting for Purity of the Surf II

Traveler

Quote from: Pumaman on Sun 04/03/2007 21:26:34
QuoteTheir *coordinates* are the same in both the new build and the last version... but in the editor they are clearly in different places. I have a label with 5 words, and have 5 buttons behind each word in the label, and now they don't line up anymore. Could it be related in any way to this new editor's font processing, or something? Does it process fonts the same way as the old one did?

Hmm, are you using TTF fonts? I think the TTF sizing might be off in this editor, I'll need to look into it.

At the risk of looking silly for stating something obvious: font rendering under .Net is very different from the normal Win32 font renderer - I had similar problems when I was working on a paint program. Text width & height values don't necessarily match the rendered text on screen for various reasons. Maybe there is a solution but after roundly cursing Microsoft and Bill Gates for a while back then I didn't find any. MSDN does have some articles on this.

Feel free to ignore this, since this is a .Net problem; if you use a 3rd party library, it may not apply.

SSH

#67
AGS_MAX_GUIS, AGS_MAX_CONTROLS_PER_GUI,  aren't defined when I build, although they seem to be in the autocomplete... probably because I manually added them to get it to build... ;)


Also, I wonder if americangirlscouts.org are going to set up a subversion server for AGS projects now...
12

monkey0506

#68
I don't see those values in autocomplete SSH...maybe it's just you. :P

I like the new autocomplete...but I see "true" autocompleting twice. I especially like the fact that it registers all of the reserved keywords as well as macros (#define-s). It apparently even picks up on my own custom-defined macros which is wonderful. It does however register the keyword "attribute". That's not one that we can make any effective use of...considering what it does...or can we? ;)

I have a question about the way character and inventory interactions are converted into script functions though: Is this going to be the actual function that is called (like the way that GUIControl clicks are run), effectively obsoleting the "character1_a", "inventory5_c" functions? Because that would be absolutely brilliant.

I see that there is a "Close all others" option to close all tabs except the active one. It would be nice (IMO) if there were a "Close all" option.

I've noticed that though you can see the ZOrder for GUIControls, you can't directly modify it. You couldn't in AGS 2.72 either...which I didn't actually realize until I looked. And I know this isn't supposed to be a feature request thread...I'd just like to voice my support for the ability to directly access/modify a GUIControl's ZOrder.

This alpha is looking absolutely wonderful Chris. The only other thing (as if I haven't said enough :)) I'd like to really see changed would be names for our scripts. For example, the first script in my game is "Module0.ash". I recognize the ASH extension as being a script header, but I don't know for which module! So I have to open it to see which module it is...Oh, it's the Properties module!

So maybe we could have our scripts listed like "Properties Header, Properties Script, Global Header, Global Script, etc." instead of "Module0.ash, Module0.asc, GlobalScript.ash, GlobalScript.asc"?

Thanks for your work on this Chris. It really is looking great.

[EDIT:]

P.S. Ctrl+W used to save-and-exit scripts. Now it just inserts a very interesting looking ETB character. :o

Kweepa

Quote from: monkey_05_06 on Tue 06/03/2007 04:46:34
For example, the first script in my game is "Module0.ash".

This is a good point - if the module order is changed, it will mix up the modules in source control.
Still waiting for Purity of the Surf II

Pumaman

Ok, because I need to make sure the font sizes are correct, I've uploaded an alpha 3a version:
* Module scripts are now saved correctly on import
* Changed TTF sizing to hopefully be consistent with AGS 2.72
* Text box "Show Border" property was being imported the wrong way round
* Middle-click now closes a tab
* Improved behaviour of room list when switching between rooms
* Double-clicking GUIs and GUI controls now jumps to their script handler, if they have one
* Fixed GUI control handlers not being linked up on import
* Added some missing AGS_MAX_* constants

If you could let me know whether your fonts are looking ok now, that'd be cool.

QuoteI'd forgotten to check this. Looks great to me, but I'd like to point out that, similar to the GUI buttons, there are no associations - I mean, the interactions that I HAD defined still appear on the field, but when I click the elipsis button it creates a brand new section on the script.

Hmm, could you elaborate? There was definitely a problem with GUI controls which is fixed in 3a, but I haven't had any issues with inv/char interactions being hooked up on import?

QuoteScript compiling caused hardly any trouble even thouhg there is a whole jumple of plugins in that game

Ah good -- I meant to ask about plugins as well. Glad to see they're still working.

QuoteI must say that I really like the way everything works now; it IS a big change in look and feel, but the new design is functional, not just modernised, and the page switching alone is a great thing. It's like watching the original Star Trek episodes, and then watching Next Gen

Hehe, as it's progressing I'm finding the same thing, when I go back to use 2.72 it feels rather "retro" ;)

QuotePlease make AGS remember its window state, so that it starts maximised when we left it that way.

Good point, this is probably something I'll leave till later, but please do remind me if it's not doing this by beta-time.

QuoteRight off the bat, I love all the new art, the opening screen as well as the new editor icons!

Indeed, thanks to Klaus for these :)

QuoteAlso, it seems the editor can't work with locked files (submitting files to perforce locks them):

Hmm, AGS should automatically check out files when you try to edit them -- but I've only been able to test it with SourceSafe. What is the concept of "Locked" in perforce? Is it equivalent to "Checked in" or is it something further?

Quotebut I see "true" autocompleting twice

Could you elaborate? I only see it once.

QuoteI have a question about the way character and inventory interactions are converted into script functions though: Is this going to be the actual function that is called (like the way that GUIControl clicks are run), effectively obsoleting the "character1_a", "inventory5_c" functions? Because that would be absolutely brilliant.

Yes. From 2.8 onwards, the functions will be called "cEgo_Look", "cEgo_Interact", etc. As part of the import process, the editor will wrap any script functions you have, such that they are all called via these new-style function name.

QuoteI've noticed that though you can see the ZOrder for GUIControls, you can't directly modify it. You couldn't in AGS 2.72 either...which I didn't actually realize until I looked. And I know this isn't supposed to be a feature request thread...I'd just like to voice my support for the ability to directly access/modify a GUIControl's ZOrder.

This poses problems with the editor then having to jiggle numbers around to maintain a unique z-order. In what situation would you need this rather than just using Send To Front / Back?

Quotelike to really see changed would be names for our scripts. For example, the first script in my game is "Module0.ash".

Yep, this is only a temporary solution, I need to add the ability to rename the script files.

Rui 'Trovatore' Pires

QuoteIf you could let me know whether your fonts are looking ok now, that'd be cool.

It's almost perfect, but it's still a pixel off in a couple of places. But maybe it's close enough to work with... just not 100%.

I've noticed that double-clicking on a control with no previously established script does not automatically create a script entry, as it used to (via a confirmation box). Is this on purpose or an oversight? I liked it, it saved me time.

And I think I figured out what happens to the inventory items (no char interaction in my game, so I can't test *that*). Some *new* ones get created, and they *call*, say, inventory1_a(). Which naturally means it will work. I hadn't noticed that, because it was so unexpected. Nice workaround, I'll say.
Reach for the moon. Even if you miss, you'll land among the stars.

Kneel. Now.

Never throw chicken at a Leprechaun.

Layabout

#72
Quote from: strazer on Sun 21/01/2007 16:40:15
I meant the AGS editor, not Mono.
Allegedly, from what I read in the mono faq, mono can run .net binaries, so if that were true, then it should work. I'll give it a test.

*edit* As it also says here http://www.mono-project.com/Guidelines:Application_Portability

*edit again* And it doesn't run. It has something to do with winform, which mono hasn't fully got working. But that said, I guess when it is more developed, it just may well be able to run the AGS editor. Which would make the linux folk happy. Hopefully by the time 2.8 is official, mono might be more capable of handling the winforms stuff.
I am Jean-Pierre.

monkey0506

Quote from: Pumaman on Wed 07/03/2007 22:09:05
Quotebut I see "true" autocompleting twice

Could you elaborate? I only see it once.

Commenting out my scripts made that go away. So it's an error on my part somewhere.

Quote from: Pumaman on Wed 07/03/2007 22:09:05
QuoteI have a question about the way character and inventory interactions are converted into script functions though: Is this going to be the actual function that is called (like the way that GUIControl clicks are run), effectively obsoleting the "character1_a", "inventory5_c" functions? Because that would be absolutely brilliant.

Yes. From 2.8 onwards, the functions will be called "cEgo_Look", "cEgo_Interact", etc. As part of the import process, the editor will wrap any script functions you have, such that they are all called via these new-style function name.

Wonderful!

Quote from: Pumaman on Wed 07/03/2007 22:09:05
QuoteI've noticed that though you can see the ZOrder for GUIControls, you can't directly modify it. You couldn't in AGS 2.72 either...which I didn't actually realize until I looked. And I know this isn't supposed to be a feature request thread...I'd just like to voice my support for the ability to directly access/modify a GUIControl's ZOrder.

This poses problems with the editor then having to jiggle numbers around to maintain a unique z-order. In what situation would you need this rather than just using Send To Front / Back?

I can't really. I just think it would be nice if we could...:D...besides...if it were really an issue we could use the send-to-front/back functions multiple times to put them in the order we wanted...

Quote from: Pumaman on Wed 07/03/2007 22:09:05
Quotelike to really see changed would be names for our scripts. For example, the first script in my game is "Module0.ash".

Yep, this is only a temporary solution, I need to add the ability to rename the script files.

Great. So...good work thus far. Hope to see the first beta soon! ;)

Lt. Smash

Some bugs:
I started AGS, created a new font, double clicked it and this error message came:
Quote
---------------------------
Adventure Game Studio
---------------------------
An unexpected error occurred. Please note down the following information and contact CJ.



System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.

   at drawFontAt(Int32 , Int32 , Int32 , Int32 )

   at AGS.Native.NativeMethods.DrawFont(Int32 hDC, Int32 x, Int32 y, Int32 fontNum)

   at AGS.Editor.FontEditor.imagePanel_Paint(Object sender, PaintEventArgs e)

   at System.Windows.Forms.Control.OnPaint(PaintEventArgs e)

   at System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer, Boolean disposeEventArgs)

   at System.Windows.Forms.Control.WmPaint(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)
---------------------------
OK   
---------------------------

And:
When I open the sprites window or other window and click on something else in the upper right field, the settings field to the right disappears. -> it gets white.

Kweepa

Quote from: Pumaman on Wed 07/03/2007 22:09:05
QuoteAlso, it seems the editor can't work with locked files (submitting files to perforce locks them):

Hmm, AGS should automatically check out files when you try to edit them -- but I've only been able to test it with SourceSafe. What is the concept of "Locked" in perforce? Is it equivalent to "Checked in" or is it something further?

That wasn't very clear. I apologise. Yes, I meant "checked in" ("submitted" in perforce parlance) read-only files. I submitted them through the perforce client because I couldn't submit in the editor (perforce has atomic operations and not all the files existed, so the editor check in failed).
Still waiting for Purity of the Surf II

Pumaman

QuoteI've noticed that double-clicking on a control with no previously established script does not automatically create a script entry, as it used to (via a confirmation box). Is this on purpose or an oversight? I liked it, it saved me time.

Good point, I need to add this back in.

QuoteI started AGS, created a new font, double clicked it and this error message came:

This has already been addressed earlier in the thread -- basically, don't try to use the blank game you get when the editor starts up. Find one of your games, make a backup copy of it, and then import that into the editor.

QuoteWhen I open the sprites window or other window and click on something else in the upper right field, the settings field to the right disappears. -> it gets white.

This is by design, at a later date it might give you properties of whatever you clicked on in the tree list, perhaps. Clicking back in the main window should restore the properties.

QuoteThat wasn't very clear. I apologise. Yes, I meant "checked in" ("submitted" in perforce parlance) read-only files. I submitted them through the perforce client because I couldn't submit in the editor (perforce has atomic operations and not all the files existed, so the editor check in failed).

So in what situation do you get that error message? If the files are checked in, then when you try to edit a script AGS should prompt you to check the file out.

Anyway, alpha 4 is now up.
This now includes the ability to actually build the EXE file; hence, you can see whether stuff that you do in the editor actually works or not. I appreciate that there's still no way to save room files so for now you can't test changes to rooms yet.

Please give this a go; let me know if the EXE that it builds actually works for you, and if any bits of your game stop working as a result. It's been quite a mammoth task getting all the compilation code in there, so I'm sure I've missed something somewhere.

In addition, alpha 4 adds a couple of minor bits -- you can now rename script modules, and there's a Find option in the script editor.

Rui 'Trovatore' Pires

Everything seems to work fine... except that when I quit the game, I got this:

Code: ags
---------------------------
Adventure Game Studio
---------------------------
An unexpected error occurred. Please note down the following information and contact CJ.



System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.

   at System.Drawing.SafeNativeMethods.Gdip.GdipDrawPath(HandleRef graphics, HandleRef pen, HandleRef path)

   at System.Drawing.Graphics.DrawPath(Pen pen, GraphicsPath path)

   at AGS.Editor.TabbedDocumentContainer.DrawPane(Graphics graphics, ContentDocument pane, Boolean selected, Int32 x, Int32 y)

   at AGS.Editor.TabbedDocumentContainer.tabsPanel_Paint(Object sender, PaintEventArgs e)

   at System.Windows.Forms.Control.OnPaint(PaintEventArgs e)

   at System.Windows.Forms.Control.PaintWithErrorHandling(PaintEventArgs e, Int16 layer, Boolean disposeEventArgs)

   at System.Windows.Forms.Control.WmPaint(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)
---------------------------
OK   
---------------------------


And you know what? I couldn't reproduce it.

And, uh, somehow this happened...



Closing all tabs and re-opening them didn't restore it back, too. Couldn't reproduce it. Also, just a curio - I can click on the image that appears when I'm "saving the game", or "importing the game", or whatever, it works like a button.
Reach for the moon. Even if you miss, you'll land among the stars.

Kneel. Now.

Never throw chicken at a Leprechaun.

GarageGothic

My game compiled fine and seemed to run without problems. I haven't played around much with the editor itself since there seems to be so many features still missing.
I really have trouble adapting to the .NET 2.0 style (I also recently got Microsoft Expression Web and the interface is a major obstacle), so I don't expect to upgrade until there are major changes made to the engine itself. I wonder how easy it will be for Microsoft to get casual users to accept this, probably the biggest change since Win95 came out.

nahuel

The new editor does look quite nice (not a very helpful comment I know).

I was wondering if there is a specification of the data files AGS uses (ie .dta). I was considering the posibility of working in an editor for mac, however the problem is that trying to reverse engineer the file format would take ages. If that technical information would be available, developing editors for other platforms would be much easier of course.


SMF spam blocked by CleanTalk