AGS 2.8 alpha 8 preview

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

Previous topic - Next topic

strazer

Quote from: Pumaman on Fri 04/05/2007 23:15:56Hmm yes, in 2.72 the GUI names have #defines created for them, but 2.8 doesn't do tihs any more. Would this be useful for people?

Unless there's another way to check for the existence of a GUI, I think module authors need this to present an error message using ifdef if the GUI belonging to the module is missing. That's what I would do, anyway.

SSH

Quote from: Pumaman on Fri 04/05/2007 23:15:56
QuoteI just looked into Monkey Island 2 template and noticed that ACTION is a name of the very first GUI (#0) in the list.
I thought it's worth mentioning in case it's somehow related.

Hmm yes, in 2.72 the GUI names have #defines created for them, but 2.8 doesn't do tihs any more. Would this be useful for people?
Well, if you want games to convert automatically...

Also, I think some of my modules depend on this behaviour
12

Tartalo

This .NET rewrite creates hope of cross platform compatibility, is it an objective?

monkey0506

Just to reiterate what strazer and SSH already said, #ifdef is about the only way for a module author to say "does a GUI with this name exist?...because I need it."

Thanks Chris. :P

subspark

#124
Chris, AGS 2.8 Alpha 1 - 6 has been throwing the following error at me:



To clairy, I've never been able to run any incarnation of the alpha on my PC.

My PC specs are as follows:

Dell Precision 670
-------------------
CPU: Intel XEON 2.8Ghz
GPU: Quadro FX 4500 PCI-E
OS: Windows XP Pro
RAM: 2GB

I beleive this is a MAJOR bug. Hope we can clear it up soon.

Cheers,
Paul.

Screen Resolution set to default: 2560x1600

Radiant

Hm...

This obviously means I'll have to update META at some point :)

GarageGothic

Quote from: subspark on Mon 07/05/2007 17:07:37To clairy, I've never been able to run any incarnation of the alpha on my PC.

Have you made sure that you do have version 2.0 of the .NET Framework installed?

Pumaman

QuoteProbably related to the extended ASCII characters previously crashing the editor, they now seem to just get corrupted when importing an old game. In my script, the name "René Descartes" becomes "RenàÆ'© Descartes" when importing from 2.72 Final 2 to 2.8 Alpha 6.

Hmm, I'll look into it.

QuoteAlso, if you'd consider shipping the new ags with the updated roger template/gui I made that would be cool.  I've verified it to work perfectly with 2.8 alpha 6.

This is an interesting point. Should the AGS distribution include some of the more popular templates to make it easier for newbies to get started?

QuoteA couple of things would be nice:

Thanks for your comments, however I want to get the 2.72 functionality all in there before I start adding other new stuff. We'll revisit your suggestions at that time.

QuoteThis .NET rewrite creates hope of cross platform compatibility, is it an objective?

It's not a design goal, no. If it helps, then great. However, the editor still uses a native code component which means it's probably more difficult to run on other platforms than pure managed code.

QuoteChris, AGS 2.8 Alpha 1 - 6 has been throwing the following error at me:

That's an error trying to initialise your source control system. Do you have a source control program (eg. sourcesafe, perforce) installed?

LimpingFish

Quote from: Pumaman on Tue 08/05/2007 20:08:39
This is an interesting point. Should the AGS distribution include some of the more popular templates to make it easier for newbies to get started?

I think a couple of "open source", as it were, (very) short sample games might prove popular, rather than trying to incorporate templates and various guis into a single demo game.

It might stop people asking the same questions over and over again ("How do I make a platform/first person/shooting gallery/misc").
Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

SupSuper

Built-in templates for the most common requests would suffice, such as Lucasarts style, RPG game, etc.
Programmer looking for work

subspark

QuoteBuilt-in templates for the most common requests would suffice, such as Lucasarts style, RPG game, etc.

I couldn't agree more. As for Lucasarts GUIs I beleive the most complete one is the Monkey Island 2 GUI. Theres a couple floating around. Its Perikovs one. (hideously misspelt)

If it could be rewritten for 2.8 using modern code then a template could be included with AGS 2.8.
Theres no need to include templates of similar design like Fate of Atlantis. Its just a matter of swapping sprites and a good practise for new developers anyway. I've been there. I loved problem solving that one once. ;)

As for my issue, yes, I use Perforce for licensed Unreal 3 development. It is installed and theres definatly a problem there.
I don't expect to have to uninstall Perforce to get AGS running. Making games is my business and not just my hobby so I'd really love to be able to continue my job and work on my beloved AGS on the same machine if you please.  ;)

Could we correct this error, Chris. I imagine others too may need Perforce installed.

Cheers mate,
Paul.

Pumaman

Alpha 7 is now up, with these changes:
* Added support for script extender functions
* Added support for translations
* Added Auto-Number Speech Lines feature
* Editor now remembers its size and position when you close and re-open it
* Autocomplete now handles protected vars/funcs correctly
* Autocomplete now pops up for enums in function calls
* Game EXE icon is now set (without support for win98 -- does anyone still use it??)
* Setup program is now generated in Compiled folder
* Fixed red and blue being mixed up in the colour finder at 16-bit colour
* Fixed accented characters getting corrupted on import from 2.72
* Re-implemented #defines for GUIs (only if their names start with "g")
* Any GUIs with width or height of 0 are automatically adjusted to 1 on import from 2.72 to prevent errors
* Added some error handling around the source control initialization


What is an extender method?

It's a feature that people have been asking for for quite a while; the easiest way is to give an example:

function SayHello(this Character*)
{
this.Say("Hello");
}

and then later on in the script you can do:
player.SayHello();
character[EGO].SayHello();
etc

Basically, it allows module authors to add extra methods to the built-in types like Character.


What's still missing from 2.8?

* Autocomplete doesn't yet work with local variables
* Better way of importing interaction variables (currently crash game when attempt to use GetGraphicslVariable)
* Various import and export options
* help file, general help system
* Test Game command


QuoteAs for my issue, yes, I use Perforce for licensed Unreal 3 development. It is installed and theres definatly a problem there.

I've improved the error handling in alpha 7 so you should get a more useful error message and be able to continue anyway. Perforce should definitely work with AGS, I've tried it and Steve McCrea has also reported success with it.

Did you have the Perforce SCC Plugin installed at some point and then un-install it? That might explain the error you're getting if it didn't uninstall properly. Try re-running the P4V installer and see if that clears up the problem.

SSH

Can extenders take OTHER arguments, too?
12

Pumaman

Yes, you can just do this for example:

function SayHello(this Character*, int jibble)
{
this.Say("Hello, %d", jibble);
}

subspark

#134
Well our programmer reccommended turning the dll off by renaming it to p4scc.dll.no so that i wouldnt get this annoying hang up everytime Unreal3Ed starts. That MUST be the problem, CJ.

Thanks for the speedy fix. Your efforts are most appreciated mate. Thankyou.


On another note, all my sprites from a 2.72 game have turned out pure black. In other words I loaded an older project using AGS 2.8 and all the pixels are black. In a related matter, It would be really handy, Chris, if we sometime had an alternate viewing option for sprites. Too often I have to double click on the sprite to see what it is because the thumbnail is too small. Could we perhaps have an option to label our sprites and a choice between the names and the standard numbers. If I am to reimport all my sprites, I'm running blind as to which ones are which to replace.

Does anybody else second this? It would be a big help in my pipeline with the editor.

Enjoy your weekend people.

Cheers guys,
Paul W.

Gilbert

Quote from: subspark on Sat 12/05/2007 14:30:16
On another note, all my sprites from a 2.72 game have turned out pure black. In other words I loaded an older project using AGS 2.8 and all the pixels are black.

Hmmm. Can you check if the colour depth of the game was unchanged after imported in V2.8?

subspark

Absolutely. Checking again now.

Okay. When I first converted the old 2.72 project over to AGS 2.8 it was on another computer without Perforce installed. After I got back from overseas, I copied the 2.8 converted game to my home pc and havent been able to run it until this weekend thanks to CJ's fix. When I opened the already converted game up, the sprites were black.

I have reimported the original 2.72 game into AGS 2.8 alpha 7 and all is good with the sprites.

I don't beleive I can reproduce the problem without the laptop which I dont have.

Cheers,
PW.

monkey0506

#137
Regarding extender methods...if I put said extender method into a script module do I have to put an import in the script header to make the function globally available (as with  normal functions)?

I'm going to go to the home computer right now and test it...I just figured I'd ask anyway.

Regarding "* Re-implemented #defines for GUIs (only if their names start with "g")"...okay now that I actually test I see that the 'g' isn't necessary for our 2.8 GUIs. Now I understand.

Also I wanted to ask if you've just been copying and pasting that "What's still missing" list. Just every time I read over it to see what you've got left to go I see that "GetGraphicslVariable" :P

[EDIT:]

Ermm...I have an error to report. I figured my GUIAnimation module would be a good place to start with this extender method stuff...so I've got an Animate(this GUI*, int view, int loop, ...) function. And apparently you do have to import it to use it globally (duh)...but...when I put "gEgogui.Animate(" in my GlobalScript.asc file and tried compiling...it crashed every time with an "AGSEditor.exe has encountered a problem and needs to close.  We are sorry for the inconvenience." error.

I thought it was a problem with the extender methods until I realized that perhaps typing out the opening parenthesis for a function without providing any parameters or the closing parenthesis might cause problems. :o

P.S. If I may, I would like to take this opportunity to suggest that when the ability to import/export modules (scripts) is reimplemented, you keep the SCM format that way we can make modules that are compatible with both 2.72 and 2.8 instead of having to release separate versions (otherwise will this #ifver stuff ever actually amount to anything? :P) Thanks

P.S.S. Would it be possible (and I know I've asked several times in several different ways about this) to make the autocomplete detect #if[n]ver and react accordingly? Obviously said changes wouldn't be backwards-compatible...but at least it would work with future versions.

Pumaman

QuoteI have reimported the original 2.72 game into AGS 2.8 alpha 7 and all is good with the sprites.

Ok, if it's working with the latest version then I'm not too worried. Please do let me know if it happens again.

QuoteErmm...I have an error to report. I figured my GUIAnimation module would be a good place to start with this extender method stuff...so I've got an Animate(this GUI*, int view, int loop, ...) function. And apparently you do have to import it to use it globally (duh)...but...when I put "gEgogui.Animate(" in my GlobalScript.asc file and tried compiling...it crashed every time with an "AGSEditor.exe has encountered a problem and needs to close.  We are sorry for the inconvenience." error.

Can you clarify what happened here?
Are you saying that when you typed the ( character the editor crashed, or that when you tried to compile the game it crashed? I haven't been able to reproduce it so far, what did you do exactly?

QuoteP.S. If I may, I would like to take this opportunity to suggest that when the ability to import/export modules (scripts) is reimplemented, you keep the SCM format that way we can make modules that are compatible with both 2.72 and 2.8 instead of having to release separate versions

It will certainly import SCM files, I guess it wouldn't do any harm to allow it to export them too.

monkey0506

I started to type out the function then started working on a different script (because I knew I hadn't actually written the function out yet) and forgot about it. It might just be my computer that's crashing but in the script header I had something to the effect of:

Code: ags
import Animate(this GUI*, int view, int loop, int delay, RepeatStyle=eOnce, BlockingStyle=eNoBlock, Direction=eForwards);


And then in the global script I had (inside of game_start()):

Code: ags
gEgogui.Animate(


For testing purposes I have a GUI (gEgogui) that runs through EGO's animation cycles. So that explains what gEgogui is. And like I said, I stopped typing after the opening parenthesis because I was working on another script and forgot to return.

There was no sort of error message generated by AGS itself (as I would suspect there (would/should) (be/have been)), Windows just reported that it had to terminate the program.

Again, it may have just been my computer, I don't know.

As for the SCM files, it would just be easier (for me as a module writer) if I wanted to create a module that was compatible with AGS 2.7* and 2.8* if I didn't have to create separate distributions.

SMF spam blocked by CleanTalk