Suggestions for the next version of AGS

Started by Pumaman, Sun 27/01/2008 00:59:41

Previous topic - Next topic

monkey0506

Perhaps along the same lines there could be an option in Preferences: "Generate a warning when compiling the game in Debug mode"? That way when you're building the EXE you could (optionally) generate a warning letting you know Debug mode is on. That would be the most obvious means to me.

As far as installers go, I think including one in AGS is a bit much. I absolutely would not want it to be required, and would probably rate it was one of the lowest priority suggestions for AGS. There are a ton of more useful ideas (i.e., getting the size of a dynamic array, pointers to custom types, dynamic arrays within structs, etc.).

RickJ

tzachs: I think you made a good observation to point out a mistake that people often make, however, I don't agree with your proposed solution.  The editor allows you to turn off the message box, which I find deeply annoying.   Perhaps a better solution would be to display a message when a game is first open by the editor.

monkey: "There are a ton of more useful ideas (i.e., getting the size of a dynamic array, pointers to custom types, dynamic arrays within structs, etc.)." Yes, Yes Yes, and yes yes to your suggestions.  I would also add pointers to functions to your list.  I would love to be able to construct jump tables.

Ryan Timothy B

Quotetzachs: I think you made a good observation to point out a mistake that people often make, however, I don't agree with your proposed solution.
That was me actually who suggested that. :P

Anyway.. This morning would be the second or so time now that I've needed to check if an int is odd or even.  I haven't found anything in the manual, so I was mainly curious if it was possible to add.
I know there is a way to get past this, which would be to get the remainder of the int.  Eg:

if ((i%2 == 1) || (i == 1))  //the number is odd.

I blame Turbo Pascal.  I used to use  odd(int)  all the time with my old shooter games. :P

suicidal pencil

I think that having the 'for' and 'foreach' loops in AGS would help with scripting.

The 'for' loop is good for having a counter attached to a loop. In AGS, it would look like this:
Code: ags

int counter = 0;
while(counter <= 100)
{
  //do stuff
  .
  .
  .
  counter++;
}


Now, the same stuff, but in a 'for' loop instead:

Code: ags

for(int counter = 0; counter <= 100; counter++)
{
  //do stuff
  .
  .
  .
}


I find that much easier to deal with, rather than the while loop.

The 'foreach' loop is much like the 'for' loop, except that it iterates through all of the elements in an array (It would be a good way to find the size of your dynamic array, monkey)

As above, so below: here's the same thing in AGS (in AGS, this works only if you already know the length)
Code: ags

int counter = 0
while(counter <= 23)
{
  array[counter] += 5;
}


Now with 'foreach'

Code: ags

foreach int counter(array)
{
  counter += 5
}


the 'int counter' in the foreach loop is what the value of the current element of (array) is.

Thoughts? (I feel as if I wrote a tutorial...)

Wonkyth

The foreach loop is something I've often wished for, but I've always found a way around.
"But with a ninja on your face, you live longer!"

Gilbert

Well, the 'for' thingie is an outstanding request, which I agree that it's useful, but due to the priority of stuff it's not quite possible to be re-implemented any time soon, and though using 'while' loops look less elegant, it does do anything you want already. (FYI, the AGS AC text scripting did have 'for' loops until V1.14, when the script engine was changed, and requests for bringing it back had been heard from time to time.)

TerranRich

Quote from: Ryan Timothy on Sun 15/11/2009 07:16:15
if ((i%2 == 1) || (i == 1))  //the number is odd.

if (i % 2 == 1)

would be sufficient, as 1/2 would be 0 with a remainder of 1, covering 1 as a possibility.
Status: Trying to come up with some ideas...

Ryan Timothy B

Hmm, didn't know that was possible.  Thanks Terran.

Also, I noticed something again this morning.  I'm not sure if it has been mentioned before (and I still haven't played with the AGS Beta yet), but if you make a large GUI (for example: 1024x768), the viewable editor doesn't have scrolling. :P


DoorKnobHandle

I don't really like the way how it has become really annoying for game creators to quickly run/preview their game in fullscreen in the last versions of AGS. I know some people like the windowed mode better for these things but I'm totally different there, it only takes my monitor a fraction of a second to go to fullscreen mode and then I get a feel for the immersion. Currently, I always have to hit F7 or click "Build game", then click "Run Setup", then hit "Ok".

monkey0506

dkh there's an option in Preferences regarding display mode when running the game without the debugger. You can set this to "Always run full screen" so that if you want to run the game full screen you can then just press Ctrl+F5 and it will run the game.

You can't use the script debugger when doing this. Any time you run the game with the script debugger it's always windowed. ;)

DoorKnobHandle

Ah, didn't know that. That fixes my issue ALMOST completely. One thing why I'd still prefer another system than that is for games where more than one people works on the project. Like in FoY, we work using SVN Turtoise and some people like the windowed mode, others like fullscreen, always having to change that flag in the settings is a pain- in the behind... :D

Thanks for letting me know that setting exists in the first place tho!

Wonkyth

You shouldn't have to change it every time.
Just debug normally if you want windowed, and Ctrl+f5 for full-screen.
"But with a ninja on your face, you live longer!"

DoorKnobHandle

That does work indeed, thanks. So F5 does windowed mode and CTRL+F5 does fullscreen, pretty neat!

monkey0506

Yes, unless I'm mistaken the option is actually stored locally and will be applied to every project you work with in AGS (on that system). ;)

DoorKnobHandle

Ah that's even better! :D Sweet!

EDIT: Actually, that's pretty obviously a local setting since it's in the AGS preferences panel and not in the project somewhere... Dunno where my head is...

Tonic Ink

If it hasn't already been mentioned it'd be pretty neat if you could assign views to GUI buttons/labels/bg image etc.

Calin Leafshade

Probably been mentioned before but how about overlays with an alpha channel?

also a transparency control on the text overlay would be nice. Specifically for fading text (i.e damage numbers :D)

Crimson Wizard

Possibly an option to import or rather add to the list existing scripts as ash/asc files. Currently it is possible only by creating new script and copying contents from existing ones.

discordance

Actually, you can import and export scripts.

SMF spam blocked by CleanTalk