Suggestions for the next version of AGS

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

Previous topic - Next topic

Crimson Wizard

#240
Well, yes, now I see.

If I understand this correctly, the idea is to move camera 1 pixel per tick, yet it must keep character in focus (so it should be at same place relative to viewport).
To achive this character movement should be somehow synchronized with camera.

By the way, this reminds me... I saw some module:
http://www.adventuregamestudio.co.uk/yabb/index.php?topic=33142.0
Does it make what needed or not? I'm gonna check it.


EDIT: I think it does... although it looks too fast in demo. Maybe some adjustments needed.
Anyway, I suppose that module may be a solution to your suggestion, Calin.

RickJ

#241
Runtime Error Reporting
Currently when a runtime error occurs, such as "array out of bounds", the cursor is positioned to the script line where the error occurred, a stack dump widow is displayed at the bottom of the screen and an error message pops up describing the nature of the error.   The popup window has an Ok/Dismiss button that closes the popup window and the stack dump window.  The popup window must be closed before doing any editor actions.  The problem with this is that in order to use the stack dump information one must record the information to paper before dismissing the popup window.   I have a couple of suggestions that would make it easier to debugging of these kinds of errors.

Leave Stack Dump Open
When the popup error message box is closed leave the stack dump window open.  This would eliminate the need to record the script file and line numbers of the stack dump.

Display Function Names in Stack Dump
The other thing that is routinely recorded on paper is the name of the functions that contain the script lines displayed in the stack dump.   It would be convenient and time saving if function names were included in the stack dump.   This would eliminate the need to inspect each and every script line in the stack dump to see it's context.

Goto Line on Click/DoubleClick of Stack Dump Line
It would be be really cool, slick, and all that stuff if one could click on a stack dump line to immediately to that line in the script editor.  This would allow one to quickly inspect the calling sequence that created the error.

Data Dump
It would be quite useful if one could inspect the values of dynamic variables defined in the function where the error occurred.   Presumably the data is readily available from the stack; I suppose the difficulty would be the availability of the variable names and stack location?  Anyway if this is practical it would be very useful.  

Thanks for the listen ;)





SSH

12

Ali

No, that module sends me your credit card details.

But if you are using it for smooth scrolling it's pretty easy to change the speed.

Starting at line 764:
Code: ags

        float targetscrollspeedx = 35.0; // pixels per second
        float slowdownrangex = 100.0; // pixels
        
        float targetscrollspeedy = 35.0; // pixels per second
        float slowdownrangey = 100.0; // pixels	


Just replace 35.0 with a lower value to achieve the effect you guys want. Unfortunately, slower movements are less perceptibly smooth at high-res because AGS moves the viewport in jumps of two pixels.

hedgefield

This is still for AGS 3.1.2 SP1, but it's a pretty interesting bug:

If you hide the player character in a room, SaveCursorUntilItLeaves doesn't work anymore.

It will change the cursor mode fine when you go over a hotspot, but when you move the cursor off the hotspot again, it doesn't change back anymore.

subspark

I think AGS should scrap all hard-coded cursormode functionality.
In order to be able to truly customize the way our games work we need to expand on the mode system rather than hold limits on it IMHO.

Cheers,
Sparky.

DoorKnobHandle

I agree, the hard-coded cursor mode functionality has been a thorn in my eye for a very long time. I appreciate it helps set up a very basic working interface for people who *just* started out using AGS but it really makes creating custom interfaces more of a cryptic hassle than it has to and can be a source for various incredibly hard to track bugs. I would propose a simple list of cursor modes without any meaning attached whatsoever and then in the Interaction panel for each hotspot/object/character and so on it would have a field for a handler for each of the modes.

Any other opinions?

Crimson Wizard

I agree to the two above, I also hate Sierra controls anyway  :P

Snarky

Maybe change it to a "Sierra cursor" module that comes as part of the default game, so it'll still be just as easy for newbies?

Dualnames

How about autocomplete to work with game start, repeatedly execute and the like? I'd really be useful for me!
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)

subspark

I'm sure I've suggested this before but "winsetup.exe" isn't the greatest name for an options dialog anymore. Some of our users have already confused it with the actual game installer.
I propose the renaming of winsetup to "Config.exe". Simple, neat and clear. :=

Cheers,
Sparky.

Crimson Wizard

Is it possible to add pixel-perfect click detection for GUIs? This may be useful in case you have non-rectangluar guis/buttons positioned so that their bounding rects overlap, and want them detect clicked ones correctly.
Otherwise this requires scripting detection.

Calin Leafshade

I still think a full 8-bit alpha channel on drawing surfaces would be the most useful thing to add.... by far

monkey0506

Well you can draw 8-bit alpha channeled sprites onto a DrawingSurface...the problem comes in trying to merge alpha channels of two sprites which you can't do. IIRC you might actually have to use CopyTransparencyMask if the background is COLOR_TRANSPARENT, but it's still possible to do.

You just can't draw multiple alpha sprites onto the same surface without destroying all but one of the alpha channels.

RickJ

Quote
I propose the renaming of winsetup to "Config.exe". Simple, neat and clear. Larry Values!!11
[
I agree but I would go a step further and suggest that it be included in the game executable and accessed like this:

    mygame.exe /setup 

I would also suggest that the setup program be script accessible  via built-in functions such as

     AgsSetup()   - open the winsetup.exe dialog and allow the user to edit the settings.

     AgsReboot() - use new settings saved in config file mygame.cfg (i.e. restart at current point in game)



subspark

I completely concur Rick. Thanks for elaborating.
Sparky.

SSH

Quote from: RickJ on Tue 26/01/2010 07:27:11
    mygame.exe /setup 

It already can! Nearly:

mygames.exe --setup is what works

Quote
I would also suggest that the setup program be script accessible  via built-in functions such as

     AgsSetup()   - open the winsetup.exe dialog and allow the user to edit the settings.

     AgsReboot() - use new settings saved in config file mygame.cfg (i.e. restart at current point in game)

In other words, a bit like this: http://ssh.me.uk/moddoc/GameSetup.zip
12

Gilbert

Quote from: RickJ on Tue 26/01/2010 07:27:11
    mygame.exe /setup 

But but but... don't you know what winsetup.exe does is only mygame --setup?

I understand the concern that some people may not be familiar with the '--' stuff though.

(Well, SSH beats me but I'd just post anyway.)

RickJ

Hey man that was fast ... real fast!  ;)

subspark

Loved your module SSH. Very resourceful!

I still strongly suggest that AGS 3.3x come with an internal solution to changing all the game's config variables via script calls.

Cheers,
Sparky.

SMF spam blocked by CleanTalk