Adventure Game Studio | Forums

AGS Development => Editor Development => Topic started by: Crimson Wizard on 27 Sep 2014, 17:25

Title: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 27 Sep 2014, 17:25
AGS 3.4.0.6 (Alpha) - Builder Patch

Download 3.4.0.6 (alpha) as a .zip archive (http://www.mediafire.com/download/8xw5wv5bs95jrie/AGS_3.4.0.6-Alpha-BuilderPatch.zip)

Download Linux build package (https://bitbucket.org/monkey0506/ags/downloads/AGS_Linux_3.4.0.6.rar)
(unarchive into Editor directory to enable building game for Linux)

Source code: https://github.com/adventuregamestudio/ags/tree/develop-3.4.0

Debug symbols (for developers):
http://www.mediafire.com/download/jwu9jg3hm0bwlmo/PDB_3_4_0_6.zip


Previous alphas:
Spoiler: ShowHide

3.4.0:
Download 3.4.0.5 (alpha) as a .zip archive (http://www.mediafire.com/download/c6dgbooaz8qgb3c/AGS_3.4.0.5-Alpha-JunePatch.zip)
Download 3.4.0.4 (alpha) as a .zip archive (http://www.mediafire.com/download/2dfy26nj1t614qd/AGS_3.4.0.4-Alpha-PropertiesOfLight.zip)
Download 3.4.0.3 (alpha) as a .zip archive (http://www.mediafire.com/download/x1laei0i9azbm11/AGS_3.4.0.3-Alpha-ClickAndScript.zip)
Download 3.4.0.2 (alpha) as a .zip archive (http://www.mediafire.com/download/jajm3z7v2z8480m/AGS_3.4.0.2-Alpha3-MultiPlatformBuild.zip)
Download 3.4.0.1 (alpha) as a .zip archive (http://www.mediafire.com/download/icgb9mjp9cjj6u5/AGS_3.4.0.1-Alpha2-CustomGameRes.zip)
Download 3.4.0.0 (alpha) as a .zip archive (http://www.mediafire.com/download/mpox2dke9ko9xf9/AGS_3.4.0.0-Alpha1-FreeRes.zip)
3.3.1:
Download 3.3.1 alpha 2 as a .zip archive (http://goo.gl/NOu7C6)
Download 3.3.1 alpha 1 as a .zip archive (http://goo.gl/TwC0w4)
Download 3.3.1 alpha 1 as a .zip archive (with Linux *building* support) (https://bitbucket.org/monkey0506/ags/downloads/3.3.1%2Blinux.rar)


ACHTUNG!
(http://i.imgur.com/3gHhXIz.png)
This is a development version of AGS 3.4.0.
Use at your own risk. Please back up any games before opening them in this version of AGS.
New settings in this version may make your project files unusable in 3.3.0 after saving with this version.

Last updated: 28th of July, 2015
Includes all changes from AGS 3.3.3 release (http://www.adventuregamestudio.co.uk/forums/index.php?topic=51425.0)
The differences from 3.4.0.5 are marked with NEW sign.


Common features

Custom game resolutions
Make your game in any sensible or non-sensible resolutions, such as 1280x720, 1920x1080 or, heck, 233x856.
A proof that weird res work too:
Spoiler: ShowHide

(http://i.imgur.com/EWJ91vX.png)


Game resolution is now set not by simple drop-down list, but with a slightly more advanced dialog.
Spoiler: ShowHide

(http://i.imgur.com/bm880R4.png)

Select "Resolution" option and click on "..." button

(http://i.imgur.com/TZanyej.png)

In the dialog either choose one of the presets, or type in your own width & height, then press OK.



Extended WFN Font Support

Support was added for extended characters in WFN fonts (those with codes 128 - 255).

Papagayo lip sync

Support was added for Papagayo lip-sync format (http://www.lostmarble.com/papagayo/). The use is similar to Pamela lip-syncing (see "Lip sync" topic in the manual for more information).

Changed system limits

ItemOld limitNew limitComments
Custom properties30unlimited
Custom property name and value lengths20 / 500unlimited
Controls on GUI30unlimited
GUI name length20unlimited
Script modules50unlimited
Script symbols per script10,000unlimited


Engine

Free display resolutions

Run AGS games in literally any resolution your computer supports, with or without black borders. (Nearly) unlimited scaling up and down is supported. Run those old 320x200 games in 1920x1080 HD.
New Winsetup will help you to set things up.

Known issues so far:
- Do not expect magic from downscaling. When you shrink hi-res game more than 1.5-2 times down it becomes barely recognizeable (and font unreadable).
- There's a weird issue with mouse movement when you run a low-res game unscaled in a large fullscreen window. I am still looking into fixing this.

Full Screen VSync for Direct3D

This feature was previously available (but always on) in Draconian editions of AGS. With AGS 3.3.1, it has been integrated into the mainline builds. It's now possible to toggle VSync using the "Vertical sync" checkbox in Winsetup.exe. If it's checked, the game starts with vertical sync turned ON. In DirectX 5 mode, you can still toggle this by setting System.VSync to true/false. In DirectX 9 mode, the System.VSync property is now read-only (as opposed to being useless previously).

Improvements

Bug Fixes



Scripting

For statement

In addition to a while loop, you can now use a for loop in AGS script. The syntax is:
Code: [Select]
for([initialisation];[condition];[increment])
{
    [loop body]
}
Examples:
Code: [Select]
for(player.x = 0; player.x < 100; player.x++)
    Wait(1);
Code: [Select]
for(int i = 10; i > 0; i--)
    Display("i = %d", i);

Break statement

You can now break out of loops using the break statement. For example:
Code: [Select]
i = length - 1;
while(i >= 0)
{
    if(page[i] == target)
        break;
    i--;
}
Will halt the loop when a match is found or leave i as -1 if there was no match.

Continue statement

You can now continue to the next iteration of a loop using the continue statement. For example:
Code: [Select]
for(x = 0; x < 100; x++)
{
    if(x % 2 == 0)
        continue;
    Display("%d", x);
}
Will display only odd numbers between 0 and 100.

Do...While loops

The Do...While loop construct is now supported. For example:
Code: [Select]
x = 1;
do
{
    x++;
    Display("%d", x);
} while(x < 1);
Unlike While, Do...While runs the loop iteration *before* evaluating the condition. The loop above will run once.

NEWSwitch statement

Added support for "switch" statement. Strings and other variable types are allowed to be checked in switch condition.
Standard case statement features like fallthrough and break are also supported.

Example:
Spoiler: ShowHide
Code: Adventure Game Studio
  1. String x = "a";
  2.  
  3. switch(x)
  4. {
  5. case "a":
  6.     Display("X is A");
  7. case "b": // fall-through
  8.     Display("X is B");
  9.     break;
  10. case "c":
  11.     Display("X is C");
  12. case "d": // fall-through
  13. default: // fall-through
  14.     Display("X is D");
  15. }
  16.  




Dynamic Arrays in Structs

Dynamic arrays are now permitted inside structs.
Spoiler: ShowHide

You can declare a struct like so:
Code: [Select]
struct DieRoll
{
    int BaseModifier;
    int DieCount;
    int Dice[ ];
    import function GetTotalValueOfRoll();
};

function PrepareDice()
{
    DieRoll a;

    a.DieCount = 3;
    a.Dice = new int[a.DieCount];
    a.Dice[0] = 6; // d6
    a.Dice[1] = 6; // d6
    a.Dice[2] = 8; // d8
    ...
}
And the dynamic array "Dice" can be initialised and used like any other dynamic array.


Dynamic arrays returned by Struct member Function.

It is now possible to define a member function of a struct, that returns dynamic array.
Spoiler: ShowHide

Code: Adventure Game Studio
  1. struct MyClass
  2. {
  3.         int Max;
  4.         int Arr[];
  5.        
  6.         import void  InitArray(int max);
  7.         import int[] GetArray();
  8.         import int   GetArrayLength();
  9. };
  10.  
  11. void MyClass::InitArray(int max)
  12. {
  13.         this.Max = max;
  14.         this.Arr = new int[this.Max];
  15.         int i;
  16.         for (i = 0; i < this.Max; i++)
  17.                 this.Arr[i] = i;
  18. }
  19.  
  20. int[] MyClass::GetArray()
  21. {
  22.         return this.Arr;
  23. }
  24.  
  25. int MyClass::GetArrayLength()
  26. {
  27.         return this.Max;
  28. }
  29.  
  30. function game_start()
  31. {
  32.         MyClass my_obj;
  33.         my_obj.InitArray(5);
  34.         int get_arr[] = my_obj.GetArray();
  35.         int i;
  36.         for (i = 0; i < my_obj.GetArrayLength(); i++)
  37.                 Display("#%i = %i", i, get_arr[i]);
  38. }
  39.  


Managed User Structs

In AGS parlance, a managed struct is a struct that can be created dynamically. You must use pointers to refer to them (similar to built-in types like Region or Hotspot). You declare them with the keyword "managed" and construct new instances with "new", like so:
Code: [Select]
managed struct Point
{
    int X;
    int Y;
};

Point *GetPosition()
{
    Point *result;

    result = new Point;
    result.X = 30;
    result.Y = 40;

    return result;
}
Important: Managed structs are currently VERY limited in that they can't contain pointers (including dynamic arrays). It is hoped that this restriction will be lifted in the future.

#define Improvements

#define can now refer to other #define'd constants. Like VC++, #define symbol expansion only needs to make sense at the time of reference. Also like VC++, the order of previously defined constants isn't important, making stuff like this possible:
Code: [Select]
#define RED    GREEN
#define BLUE   456
#define GREEN  BLUE
Display("%d", RED); // Prints 456
#undef BLUE
#define BLUE  123
Display("%d", RED); // Prints 123
Note: To prevent circular references, a #define cannot refer to itself or anything previously used to expand the #define symbol.

Static extender functions

You can now declare the first parameter of a function as a static identifier that corresponds to a struct, e.g.
Code: [Select]
function AbsInt(static Maths, int value)
{
    if(value < 0)
        value = 0 - value;
     
    return(value);
}
This works in the same way as the normal extender method syntax (e.g. this Character *) but for static methods. The above code will define a new method in the static Maths called AbsInt. You can then import it in a header:
Code: [Select]
import function AbsInt(static Maths, int value);And then use it elsewhere in your code just like it were a built-in Maths function:
Code: [Select]
int x = Maths.AbsInt(-3);
Extra Assignment Operators

The following C-style assignment operators are now supported:
*=   (Multiply by and assign)
/=   (Divide by and assign)
&=   (Bitwise AND and assign)
|=   (Bitwise OR and assign)
^=   (Bitwise XOR and assign)
<<=  (Bitshift left and assign)
>>=  (Bitshift right and assign)

Code Regions

This was previously available in Draconian editions of AGS. You can define an arbitrary region for code folding in your script like so:
Code: [Select]
#region MyRegion
do stuff;
do stuff;
do stuff;
#endregion MyRegion
The AGS editor will allow you to fold and unfold this region as though it were a code block. This has no effect on compiled code.

Bug Fixes
NEW
E.g:
Code: Adventure Game Studio
  1. int i = array[Game.GetColorFromRGB(0, 0, 0)]; // there was parse error after '['
  2.  




Script API

Direction parameter for Character.ChangeRoom

This feature was previously available Draconian editions of AGS. The Character.ChangeRoom function now looks like this:
Code: [Select]
Character.ChangeRoom(int room, optional int x, optional int y, optional CharacterDirection direction)Where CharacterDirection is a new built-in enum defined for facings (eDirectionUp, eDirectionUpLeft and so forth).

Character.DestinationX and Character.DestinationY

Two new read-only properties that can be used to determine where a character is currently heading (via a Walk command). If the character is currently stationary, these values are the same as Character.x and Character.y, respectively.

Character.FaceDirection

This function lets you to turn character to particular direction using new Direction enum (eDirectionUp, eDirectionUpLeft and so forth).

Global functions moved to Room class
GetRoomProperty ---> Room.GetProperty
ProcessClick -> Room.ProcessClick

GetRoomProperty is now Room.GetProperty to match Room.GetTextProperty. The old ProcessClick is now Room.ProcessClick.
You may need to fix your scripts if you use any of these, or disable "Enforce object-based scripting" option in Game Settings.

IsInteractionAvailable() for Other Types

This is another feature from Draconian editions of AGS. The IsInteractionAvailable() method can now be called on Hotspots, Objects and Characters.

Audio Clips API

There are two new properties for dealing with audio clips in this version.
Code: [Select]
Game.AudioClipCountRetrieves the number of clips and
Code: [Select]
Game.AudioClips[n]Allows you to access a particular audio clip.

AudioChannel.Speed.
The new property used to get or set audio clip's playback speed. The value is defined in clip's milliseconds per second; 1000 is default, meaning 1000 of clip's ms in 1 real second (scale 1:1). Set < 1000 for slower play and > 1000 for faster play.
NOTE: currently implemented for MP3 and OGG only.
NOTE: the engine will also map "AudioChannel.SetSpeed" function to this property, therefore you can run Gord10's "Self" game using new interpreter (e.g. on Linux).

Plugin API

There is now a new function that can be used to detect whether a plugin has been loaded:
Code: [Select]
Game.IsPluginLoaded(const string name)Where name is the filename of the plugin

Improved Custom Dialog Options rendering

Following callbacks are now supported for custom dialog options rendering:

Code: Adventure Game Studio
  1.   // runs each tick when dialog options are on screen
  2.   void dialog_options_repexec(DialogOptionsRenderingInfo *info);
  3.   // runs when user pressed a key while dialog options are on screen
  4.   void dialog_options_key_press(DialogOptionsRenderingInfo *info, eKeyCode key);
  5.  

Additionally following items added to DialogOptionsRenderingInfo struct:
Code: Adventure Game Studio
  1.   bool RunActiveOption(); // runs the active dialog option (defined with ActiveOptionID property)
  2.   void Update(); // forces dialog options to redraw itself ("dialog_options_render" callback will be called)
  3.  

--- ATTENTION, breaking changes! ---
* You must now explicitly run active option, even if you use mouse controls.
* You must now explicitly reset active option if the mouse is not above options UI
* The "dialog_options_get_active" callback is now NOT called, at all. It is supported only for backwards compatibility when running old games.
You will need to slightly change the logic of your script. In most cases it will be enough to simply rename "dialog_options_get_active" to "dialog_options_repexec".


Following are two examples of making custom dialog options with the new script system:

1. Classic mouse controls
Spoiler: ShowHide

int dlg_opt_color = 14;
int dlg_opt_acolor = 13;
int dlg_opt_ncolor = 4;

function dialog_options_get_dimensions(DialogOptionsRenderingInfo *info)
{
    // Create a 200x200 dialog options area at (50,100)
    info.X = 50;
    info.Y = 100;
    info.Width = 200;
    info.Height = 200;
}

function dialog_options_render(DialogOptionsRenderingInfo *info)
{
    info.Surface.Clear(dlg_opt_color);
    int i = 1,  ypos = 0;
    // Render all the options that are enabled
    while (i <= info.DialogToRender.OptionCount)
    {
        if (info.DialogToRender.GetOptionState(i) == eOptionOn)
        {
            if (info.ActiveOptionID == i) info.Surface.DrawingColor = dlg_opt_acolor;
            else info.Surface.DrawingColor = dlg_opt_ncolor;
            info.Surface.DrawStringWrapped(5, ypos, info.Width - 10,
                    eFontFont0, eAlignLeft, info.DialogToRender.GetOptionText(i));
            ypos += GetTextHeight(info.DialogToRender.GetOptionText(i), eFontFont0, info.Width - 10);
        }
        i++;
    }
}

function dialog_options_repexec(DialogOptionsRenderingInfo *info)
{
    info.ActiveOptionID = 0;
    if (mouse.y < info.Y || mouse.y >= info.Y + info.Height ||
        mouse.x < info.X || mouse.x >= info.X + info.Width)
    {
        return; // return if the mouse is outside UI bounds
    }

    int i = 1, ypos = 0;
    // Find the option that corresponds to where the player clicked
    while (i <= info.DialogToRender.OptionCount)
    {
        if (info.DialogToRender.GetOptionState(i) == eOptionOn)
        {
            ypos += GetTextHeight(info.DialogToRender.GetOptionText(i), eFontFont0, info.Width - 10);
            if ((mouse.y - info.Y) < ypos)
            {
                info.ActiveOptionID = i;
                return;
            }
        }
        i++;
    }
}

function dialog_options_mouse_click(DialogOptionsRenderingInfo *info, MouseButton button)
{
    info.RunActiveOption();
}



2. Keyboard controls
Spoiler: ShowHide

int dlg_opt_color = 14;
int dlg_opt_acolor = 13;
int dlg_opt_ncolor = 4;

function dialog_options_get_dimensions(DialogOptionsRenderingInfo *info)
{
    // Create a 200x200 dialog options area at (50,100)
    info.X = 50;
    info.Y = 100;
    info.Width = 200;
    info.Height = 200;
    info.ActiveOptionID = 1; // set to first option
}

function dialog_options_render(DialogOptionsRenderingInfo *info)
{
    info.Surface.Clear(dlg_opt_color);
    int i = 1,  ypos = 0;
    // Render all the options that are enabled
    while (i <= info.DialogToRender.OptionCount)
    {
        if (info.DialogToRender.GetOptionState(i) == eOptionOn)
        {
            if (info.ActiveOptionID == i) info.Surface.DrawingColor = dlg_opt_acolor;
            else info.Surface.DrawingColor = dlg_opt_ncolor;
            info.Surface.DrawStringWrapped(5, ypos, info.Width - 10,
                    eFontFont0, eAlignLeft, info.DialogToRender.GetOptionText(i));
            ypos += GetTextHeight(info.DialogToRender.GetOptionText(i), eFontFont0, info.Width - 10);
        }
        i++;
    }
}

function dialog_options_key_press(DialogOptionsRenderingInfo *info, eKeyCode keycode)
{
    if (keycode == eKeyUpArrow && info.ActiveOptionID > 1)
        info.ActiveOptionID = info.ActiveOptionID - 1;
    if (keycode == eKeyDownArrow && info.ActiveOptionID < info.DialogToRender.OptionCount)
        info.ActiveOptionID = info.ActiveOptionID + 1;
    if (keycode == eKeyReturn || keycode == eKeySpace)
        info.RunActiveOption();
}


Dialog Options

The highlight colour for dialog options (default rendering) is no longer hard coded as yellow (14). You can use:
Code: [Select]
game.dialog_options_highlight_color = xxx;And set the dialog options highlight colour to whatever you like. The default is 14.

GUIControl.ZOrder

New property of a GUIControl (button, label, etc) lets you to get its current ZOrder or even change one at runtime.

File.Seek and File.Position

New function File.Seek allows to set new position in the opened file stream, related to either beginning, end or last position, while File.Position property lets you to get its current value.

Mouse clicking simulation

Mouse.Click(MouseButton)
This function fires mouse click event at current mouse position (at mouse.x / mouse.y).
So you can do following:
Code: Adventure Game Studio
  1.     Mouse.SetPosition(100, 100);
  2.     Mouse.Click(eMouseLeft);
  3.  
This will simulate user click at (100,100).

GUI.Click(MouseButton) and Button.Click(MouseButton)
Run the OnClick event handler for the GUI or Button, if there is one.
Code: Adventure Game Studio
  1.     btnStart.OnClick(eMouseLeft); // simulate user press on a button
  2.  

GUI.ProcessClick(int x, int y, MouseButton))
Performs default processing of a mouse click at the specified co-ordinates, similar to old ProcessClick, but affects only interface (GUI and any child controls).
Code: Adventure Game Studio
  1.     GUI.ProcessClick(50, 120, eMouseRight); // simulate user click with right mouse button on GUI
  2.  

Custom property values can be set at runtime

The related script functions are added to all classes that supported GetProperty() and GetTextProperty(), that is - Room, InventoryItem, Hotspot, Object and Character:
Code: Adventure Game Studio
  1.   /// Sets an integer custom property associated with this room.
  2.   static bool SetProperty(const string property, int value);
  3.   /// Sets a text custom property associated with this room.
  4.   static bool SetTextProperty(const string property, const string value);
  5.  
They return 'true' if the property value was changed, or 'false' if such property does not exist, or property type is incorrect (like setting text value for integer property).

NOTE: Room, Hotspots and room Objects property values are reset to defaults when ResetRoom() is called.

Improvements to Tinting functions to make various tinting methods and properties compliant.
(This should be compatible with Draconian Edition scripts)

Region.Tint() script function now has optional luminance parameter
Code: Adventure Game Studio
  1. void Tint(int red, int green, int blue, int amount, int luminance = 100);

New SetAmbientLightLevel() script function.
Code: Adventure Game Studio
  1.   /// Sets an ambient light level that affects all objects and characters in the room.
  2.   void SetAmbientLightLevel(int light_level);
  3.  

New Character.SetLightLevel and Object.SetLightLevel script functions
Code: Adventure Game Studio
  1.   /// Sets the individual light level for this character.
  2.   import function SetLightLevel(int light_level);
  3.  

Negative light levels can be used in 8-bit games to produce darkening effect.
This applies to Ambient, Character and Object light level functions (it already worked with Region.LightLevel).

System.RuntimeInfo
This property returns a string, which contains runtime information, same as you were getting when pressed Ctrl+V (Ctrl+Alt+V - since AGS 3.3.3).



Editor

Building for multiple platforms
The Editor can now build for several different platforms. This is configured with this new option in General Settings (Compiler -> Build target platforms):

(http://i.imgur.com/PlbtQ3u.png)

Select the platforms you like to build the game for by pressing on "drop down" button to the right and checking or unchecking items in the list:

(http://i.imgur.com/N4UaLWg.png)

"DataFile" builds a game data file, and cannot be unchecked. Other targets may be selected in any combination.
More platforms will be added in time.
Note, this only affects doing full build (Build -> Build EXE / Rebuild all files). When running in test mode only Windows version is built always.

The "Compiled" folder has changed. Now each platform has its own subdirectory: "Windows", "Linux", etc. To distribute your game - pack/copy contents of corresponding folder(s).

More properties to set for game objects
Padding for Text GUI Windows
Text GUI windows now have a padding property which lets you control how much space appears between the border and the text inside a text GUI window. Previously, this value was hardcoded as 3 pixels. It now defaults to 3 pixels.
Spoiler: ShowHide
(http://i.imgur.com/LRa1hv3.png)

Clickable for Room Objects is now exposed in the editor.
Spoiler: ShowHide
(http://i.imgur.com/QUZzRIX.png)

TintLuminance for Room Regions to set all tint parameters at design time.

Editor Plugin API
Exposed GUI Panes to plugin API.

Various improvements

Bug Fixes



WinSetup
Improvements
* You can now make actual language name displayed instead of "Game Default" if you put following line in the "[language]" section of acsetup.cfg:
Code: Text
  1. default_translation_name = "British"
  2.  


Contributors
Spoiler: ShowHide

Alan v. Drake
ChamberOfFear
Crimson Wizard
cellproductions
Gurok
monkey_05_06
Tzachs
salty-horse
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Gurok on 27 Sep 2014, 17:50
Wow, this is exciting, CW! The release is getting so big now.

I would like to add that 50 was a very low limit for the number script modules :D

I renamed the old threads appropriately (I hope).

Okay, downloading now! :D
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Radiant on 27 Sep 2014, 17:57
Interesting. I was just working in 3.3 alpha turbo, but I'll go for this one instead.
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Gurok on 27 Sep 2014, 18:54
I suspect this might be a debug build :(

Spoiler: ShowHide
(http://i.imgur.com/dIyJIJc.png)


Edit: It was mostly good while I was testing it though. My game is configured to run full screen with max scaling by default. I noticed some weirdness when launching from the editor. It appeared in a window that took up the whole screen, but the taskbar and about 1 pixel of the window were visible. Previously, AGS would just ignore the full screen setting in the configuration when launching from the editor. It looks like it's now doing a hybrid between full screen / windowed. Not saying it's bad, just takes some getting used to.
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Crimson Wizard on 27 Sep 2014, 19:15
I suspect this might be a debug build :(

Spoiler: ShowHide
(http://i.imgur.com/dIyJIJc.png)

Looks like "assert" was triggered. How does this happen?

Edit: It was mostly good while I was testing it though. My game is configured to run full screen with max scaling by default. I noticed some weirdness when launching from the editor. It appeared in a window that took up the whole screen, but the taskbar and about 1 pixel of the window were visible. Previously, AGS would just ignore the full screen setting in the configuration when launching from the editor. It looks like it's now doing a hybrid between full screen / windowed.
The might be just a very large window, covering most of the screen...
E: Oh, I got it. It appears that if you first configure it as fullscreen, then run as test mode from the editor, the game is not forced to run normal windowed mode (only the size of scaled game) but uses fullscreen window size instead.
In earlier AGS it was enough to just send "windowed" flag via command line. Now it depends on many settings at once. This needs to be dealt with somehow.
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Gurok on 27 Sep 2014, 19:40
Looks like "assert" was triggered. How does this happen?

Well, for me it happens when you delete a chunk of text near the end of a script module. It's always happened in debug builds, AFAIK
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Alan v.Drake on 28 Sep 2014, 10:40
Excellent work guys!

- Alan
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: xenogia on 29 Sep 2014, 17:03
Not sure what I'm doing wrong during installation but I get the following error when I try to load it up.  Currently using Win 8.1 x64
(http://i.imgur.com/GBgnop4.png)
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Alan v.Drake on 29 Sep 2014, 17:22
Have you extracted it all in a directory and launched AGSEditor.exe from there ? Because it seems to work properly, although I'm running xp here.

- Alan
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Crimson Wizard on 29 Sep 2014, 17:55
@xenogia, uhhh, this is a known problem, you would need latest version of VC++ 2008 redistributable:
http://www.microsoft.com/en-us/download/details.aspx?id=26368

This solved it for few people, please tell if that works for you.
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: monkey0506 on 30 Sep 2014, 01:36
This is another reason why the engine's reliance on VC++2008 is becoming problematic. :-\
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: xenogia on 30 Sep 2014, 03:34
I already had Service Pack 1 installed of VC 2008 SP1, and yes I installed it all into one directory and tried to load AGSEDITOR.exe and still got that error :(

I also tried uninstalling and reinstalling the 2008 runtime files, still same error.
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Crimson Wizard on 30 Sep 2014, 08:30
I will make myself a virtual machine with Win8 on this week and find out what is required to run AGS.
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Knox on 30 Sep 2014, 17:53
This is the logical continuation of AGS 3.3.1 Alpha 2 (http://www.adventuregamestudio.co.uk/forums/index.php?topic=50162.0) released by Gurok about two months ago.
A special note about custom resolutions. They will supposedly be included into next alpha release, because they still require few minor corrections. This won't take too long.
Hi,

If I am currently using AGS 3.3.1 Alpha 2 Turbo, does this mean I can start using this version now or should I wait for the next alpha release of this version so I can use higher resolutions (1280x720)? As for the 2013th "3.4.0 Alpha" with limits removal, would the next alpha release of this version potentially at least include unlimited GUI controls? For me personally that would be the most important part of the limits removal and I would have no problem waiting for the rest of the limit removal.  :smiley:
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Crimson Wizard on 30 Sep 2014, 18:11
If I am currently using AGS 3.3.1 Alpha 2 Turbo, does this mean I can start using this version now or should I wait for the next alpha release of this version so I can use higher resolutions (1280x720)?
Wait for 1-2 weeks, I am doing last fixes to custom resolutions.

As for the 2013th "3.4.0 Alpha" with limits removal, would the next alpha release of this version potentially at least include unlimited GUI controls?
That's possible; I am reviewing my 2013th changes now to see which may be moved here without trouble.
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: oskargunn on 30 Sep 2014, 18:25
I seem to get the same error as xenogia when starting the editor. Also tried installing the latest VC++ 2008.
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Crimson Wizard on 01 Oct 2014, 00:25
Uh, I am stupid. Gurok basically told this, but I thought it is because of Editor itself...
I somehow put Debug version of AGS.Native.dll into this package. It requires different set of libraries that do not belong to VC Redist.

I updated the package, please download again (same link).
Tested this on virtual machine with Win 8.1 x64.

BTW, it appears working even without this VC redist installed... might be it uses higher VC runtime libs in the Win 8 system that are not displayed in programs list. I make a guess that this VC update is required for WinXP only. I must investigate this more.
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: ChamberOfFear on 01 Oct 2014, 02:03
Did you remove the function GetRoomProperty(string property) (http://www.adventuregamestudio.co.uk/manual/ags75.htm#getroomproperty)? Compiling outputs the error "Error (line xxx): undefined symbol 'GetRoomProperty'".
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Gurok on 01 Oct 2014, 02:33
GetRoomProperty is now Room.GetProperty to match Room.GetTextProperty. You'll need to change your function calls or turn off "Enforce object-based scripting" in the general settings of your project.

Hey CW, this should probably be listed with the other API changes.
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Crimson Wizard on 01 Oct 2014, 08:34
Ok, done. I also found there are couple of "bug fix" lines that refer to updated 3.3.0/3.3.2 rather than 3.4, so I removed them.
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Knox on 01 Oct 2014, 17:29
If I am currently using AGS 3.3.1 Alpha 2 Turbo, does this mean I can start using this version now or should I wait for the next alpha release of this version so I can use higher resolutions (1280x720)?
Wait for 1-2 weeks, I am doing last fixes to custom resolutions.

As for the 2013th "3.4.0 Alpha" with limits removal, would the next alpha release of this version potentially at least include unlimited GUI controls?
That's possible; I am reviewing my 2013th changes now to see which may be moved here without trouble.

Ok thanks I'll wait until the next release then. Great work guys, btw! :grin:
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Trapezoid on 08 Oct 2014, 05:54
Problem: Mouse.SetPosition behaves incorrectly when you have "filter_scaling:max" in the configuration. It seems to place the mouse's Y position 32 pixels below what you told it to.
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Crimson Wizard on 08 Oct 2014, 08:49
Problem: Mouse.SetPosition behaves incorrectly when you have "filter_scaling:max" in the configuration. It seems to place the mouse's Y position 32 pixels below what you told it to.
Found a mistake, please check if this works for you:
http://www.mediafire.com/download/mysrp8t1r9nh4m7/acwin_3.4.0.0_fix.zip
Title: Re: AGS 3.4.0.0 Alpha 1 Free Resolutions
Post by: Trapezoid on 08 Oct 2014, 17:56
Works just fine now, thanks!
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolutions
Post by: Crimson Wizard on 22 Oct 2014, 20:30
AGS 3.4.0.1 Alpha 2 - Custom Game Resolutions

ZIP-archive
http://www.mediafire.com/download/icgb9mjp9cjj6u5/AGS_3.4.0.1-Alpha2-CustomGameRes.zip



What's new since 3.4.0.0 Alpha 1:

Common features
Custom game resolutions.
You can now set (almost) any game resolution, including both usual and unusual one. In practice, there are certain limits (upper and lower), also I cannot honestly guarantee all crazy kinds of numbers will work well. "Standard" resolutions should work.

Game resolution is now set not by simple drop-down list, but with a slightly more advanced dialog.
Spoiler: ShowHide

(http://i.imgur.com/bm880R4.png)
Select "Resolution" option and click on "..." button
(http://i.imgur.com/TZanyej.png)
In the dialog either choose one of the presets, or type in your own width & height, then press OK.




Removed limit of Controls on GUI.
Was: 30 -> Now: unlimited.
Also removed the limit of GUI script name length. Was: 20 characters -> Now: unlimited



Script API
Struct functions returning dynamic arrays.
It is now possible to define a member function of a struct, that returns dynamic array, like this:
Spoiler: ShowHide

Code: Adventure Game Studio
  1. struct MyClass
  2. {
  3.         int Max;
  4.         int Arr[];
  5.        
  6.         import void  InitArray(int max);
  7.         import int[] GetArray();
  8.         import int   GetArrayLength();
  9. };
  10.  
  11. void MyClass::InitArray(int max)
  12. {
  13.         this.Max = max;
  14.         this.Arr = new int[this.Max];
  15.         int i;
  16.         for (i = 0; i < this.Max; i++)
  17.                 this.Arr[i] = i;
  18. }
  19.  
  20. int[] MyClass::GetArray()
  21. {
  22.         return this.Arr;
  23. }
  24.  
  25. int MyClass::GetArrayLength()
  26. {
  27.         return this.Max;
  28. }
  29.  
  30. function game_start()
  31. {
  32.         MyClass my_obj;
  33.         my_obj.InitArray(5);
  34.         int get_arr[] = my_obj.GetArray();
  35.         int i;
  36.         for (i = 0; i < my_obj.GetArrayLength(); i++)
  37.                 Display("#%i = %i", i, get_arr[i]);
  38. }
  39.  



Engine
Bug Fixes
* Fixed WAVE audio not looping after restoring a game (from Draconian Edition)
* Fixed incorrectly set Y coordinate in Mouse.SetPosition() (was broken in 3.4.0.0)
* Setting your project to run fullscreen, then running in debug mode from the Editor will cause game to run in a very large black window covering most of your screen, instead of being the size of scaled game. Now this is fixed. (introduced in 3.4.0.0)
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Crimson Wizard on 25 Oct 2014, 16:55
I reuploaded the 3.4.0.1 package with a tiny but important fix (without changing version number).
The download link is the same.

It appears that since early versions of 3.3.1 branch there was a bug that incorrectly set sprite cache size to 20 KB instead of 20 MB by default (unless it was explicitly set to something else in setup).
This could cause slow downs in hires games, because sprites and animations would need to be re-loaded more often.

The earlier Custom Resolution builds based on 3.3.0 did not have this bug.
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Knox on 27 Oct 2014, 16:18
Testing this out now, thanks a lot for all your hard work!

EDIT:

Ok, so I tried to open my game with AGS 3.4.0.1 Alpha 2 CustomGameRes and I'm getting this error:
(My computer at work is in french but I can try at home later tonight if you need it in english)
(http://i61.tinypic.com/2e5jz4g.png)

I have these plugins/dlls manually added to this vesion of AGS:
(http://i57.tinypic.com/18yk5d.png)
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Crimson Wizard on 27 Oct 2014, 19:23
@Knox
According to the error message, this occurs when one of the scripts is being compiled. Too bad we don't have much means to test things that occur during compilation.

I made this "hackish" version that would dump details about game compilation to the "compile_log.txt" (should appear in your game project folder).
If you would be able to run your game and then PM me the resulting file, I would probably have bit more info on overall situation.
http://www.mediafire.com/download/1ti78s6mn4jn5sp/AGS.Native.dll.zip
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Gurok on 27 Oct 2014, 21:54
Interesting. Maybe the code to allow returning of dynamic arrays has a bug in it?
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Knox on 27 Oct 2014, 23:59
@Knox
According to the error message, this occurs when one of the scripts is being compiled. Too bad we don't have much means to test things that occur during compilation.

I made this "hackish" version that would dump details about game compilation to the "compile_log.txt" (should appear in your game project folder).
If you would be able to run your game and then PM me the resulting file, I would probably have bit more info on overall situation.
http://www.mediafire.com/download/1ti78s6mn4jn5sp/AGS.Native.dll.zip

Here's the error in english:
Error: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Version: AGS 3.4.0.1

System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt. ---> System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
   at ccCompileText(SByte* , SByte* )
   at AGS.Native.NativeMethods.CompileScript(Script script, String[] preProcessedScripts, Game game, Boolean isRoomScript)
   at AGS.Editor.NativeProxy.CompileScript(Script script, String[] preProcessedData, Game game, Boolean isRoomScript)
   at AGS.Editor.AGSEditor.CompileScript(Script script, List`1 headers, CompileMessages errors, Boolean isRoomScript)
   at AGS.Editor.AGSEditor.CompileScripts(Object parameter)
   at AGS.Editor.BusyDialog.RunHandlerOnThrea d()
   --- End of inner exception stack trace ---
   at AGS.Editor.BusyDialog.Show(String message, ProcessingHandler handler, Object parameter)
   at AGS.Editor.AGSEditor.CompileGame(Boolean forceRebuild, Boolean createMiniExeForDebug)
   at AGS.Editor.Components.BuildCommandsComp onent.CompileGame(Boolean forceRebuild)
   at AGS.Editor.Components.BuildCommandsComp onent.CommandClick(String controlID)
   at AGS.Editor.GUIController._mainForm_OnMe nuClick(String menuItemID)
   at AGS.Editor.MainMenuManager.MenuEventHan dler(Object sender, EventArgs e)
   at System.Windows.Forms.ToolStripItem.Rais eEvent(Object key, EventArgs e)
   at System.Windows.Forms.ToolStripMenuItem. OnClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.Hand leClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.Hand leMouseUp(MouseEventArgs e)
   at System.Windows.Forms.ToolStripItem.Fire EventInteractive(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStripItem.Fire Event(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStrip.OnMouseU p(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.ControlNat iveWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNat iveWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callb ack(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


PS: I'm PMing you the log file soon.
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Crimson Wizard on 28 Oct 2014, 00:19
PS: I'm PMing you the log file soon.

I can tell that this happens on "StringPlus.asc".
Is it this module by monkey_05_06: http://www.adventuregamestudio.co.uk/forums/index.php?topic=20950.0 ?
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Knox on 28 Oct 2014, 00:43
PS: I'm PMing you the log file soon.

I can tell that this happens on "StringPlus.asc".
Is it this module by monkey_05_06: http://www.adventuregamestudio.co.uk/forums/index.php?topic=20950.0 ?


Wow that was quick Crimson...thanks a lot! I removed that module (to test), and the game runs perfectly. Should I contact Monkey to see if we can get his module to work with this version of AGS?
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Gurok on 28 Oct 2014, 01:01
Knox, please don't contact Monkey about making it compatible. It's a bug in the compiler introduced (presumably) by allowing function prototypes for member functions that return dynamic arrays. I'll look into it this evening, but it appears I've just been too lenient with where to parse such declarations or missed a check somewhere.

Here's a minimal test case:

Header:
Code: [Select]
import String[ ] MyFunc();
Module:
Code: [Select]
String[ ] MyFunc()
{
}
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Crimson Wizard on 28 Oct 2014, 08:39
Knox, please don't contact Monkey about making it compatible.

You may temporarily comment out following functions from script header:
Code: Adventure Game Studio
  1. /*
  2. ///StringPlus module: Splits the String into units no wider than WIDTH when displayed in FONT.
  3. import String[] SplitByWidth(this String*, int width, FontType font, String delimiters=0, bool caseSensitive=false);
  4. ///StringPlus module: Splits the String by instances of OTHERSTRING.
  5. import String[] SplitByString(this String*, String otherString, bool caseSensitive=false);
  6. ///StringPlus module: Splits the String by instances of anything from CHARACTERSET.
  7. import String[] SplitByCharacterSet(this String*, String characterSet, bool caseSensitive=false);
  8. */
  9.  
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: abstauber on 28 Oct 2014, 11:32
I gave it a quick shot and my game still works totally fine. Even better, everything appears a lot smoother with the nearest neighbor filter (nod)
Great version so far.
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Gurok on 28 Oct 2014, 12:07
CW, this is fixed now.

https://github.com/adventuregamestudio/ags/pull/203 (https://github.com/adventuregamestudio/ags/pull/203)

The forward declaration stuff for dynamic user structs was to blame.

P.S. I will look at that change to the LastBuildConfiguration tomorrow night. I've unfortunately run out of time tonight. Sorry I've been out of action recently.
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Crimson Wizard on 28 Oct 2014, 14:33
P.S. I will look at that change to the LastBuildConfiguration tomorrow night. I've unfortunately run out of time tonight. Sorry I've been out of action recently.
There's no hurry; and this suggestion in particular is a very low priority anyway.
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Crimson Wizard on 28 Oct 2014, 18:00
Related to dynamic arrays, have anyone considered adding some kind of "length_of" keyword to get the size of dynamic array? That would greatly simplify using them as return values...
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: monkey0506 on 28 Oct 2014, 21:55
I actually did try looking into that, but I had no idea what I was doing mucking around in the compiler code. 8-)

My personal preference would be to add a Length member to dynamic array objects (or even static arrays too), but that might be more complicated, so I'll leave that for whoever has the ability to actually implement it.
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Gurok on 01 Nov 2014, 07:39
CW,

The weird maximised window bug is fixed. However, when running games directly from the editor, the current version seems to run games at max scaling regardless of what's listed in acsetup.cfg. It used to be that it would adhere to whatever value was listed there, e.g. 3x.
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Crimson Wizard on 01 Nov 2014, 12:35
The weird maximised window bug is fixed. However, when running games directly from the editor, the current version seems to run games at max scaling regardless of what's listed in acsetup.cfg. It used to be that it would adhere to whatever value was listed there, e.g. 3x.
I fixed this in the repository recently: https://github.com/adventuregamestudio/ags/commit/e6edfdb84becac28fa684bcd762be7bbc5ef5575
Does it work for you?
The change will be included into next public release; since this is not a critical issue I just wanted to "accumulate" more changes before making a release.
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Gurok on 01 Nov 2014, 14:48
Does it work for you?
The change will be included into next public release; since this is not a critical issue I just wanted to "accumulate" more changes before making a release.

Oh. Thank you! Yes, this works for me. Now that this is fixed, I've started officially using 3.4.0 for my project too :D (Previously an old 3.3.1 build)
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Radiant on 01 Nov 2014, 19:43
In AGS Editor .NET (Build 3.3.1.1165) ** BETA VERSION ** v3.3.1, August 2014, I've got this crash,

Spoiler: ShowHide

Error: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Version: AGS 3.3.1.1165

System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt. ---> System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
   at ccCompileText(SByte* , SByte* )
   at AGS.Native.NativeMethods.CompileScript(Script script, String[] preProcessedScripts, Game game, Boolean isRoomScript)
   at AGS.Editor.NativeProxy.CompileScript(Script script, String[] preProcessedData, Game game, Boolean isRoomScript)
   at AGS.Editor.AGSEditor.CompileScript(Script script, List`1 headers, CompileMessages errors, Boolean isRoomScript)
   at AGS.Editor.AGSEditor.CompileScripts(Object parameter)
   at AGS.Editor.BusyDialog.RunHandlerOnThrea d()
   --- End of inner exception stack trace ---
   at AGS.Editor.BusyDialog.Show(String message, ProcessingHandler handler, Object parameter)
   at AGS.Editor.AGSEditor.CompileGame(Boolean forceRebuild, Boolean createMiniExeForDebug)
   at AGS.Editor.Components.BuildCommandsComp onent.CompileGame(Boolean forceRebuild)
   at AGS.Editor.Components.BuildCommandsComp onent.CommandClick(String controlID)
   at AGS.Editor.GUIController._mainForm_OnMe nuClick(String menuItemID)
   at AGS.Editor.MainMenuManager.MenuEventHan dler(Object sender, EventArgs e)
   at System.Windows.Forms.ToolStripItem.Rais eEvent(Object key, EventArgs e)
   at System.Windows.Forms.ToolStripMenuItem. OnClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.Hand leClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.Fire EventInteractive(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStripItem.Fire Event(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStripMenuItem. ProcessCmdKey(Message& m, Keys keyData)
   at System.Windows.Forms.ToolStripManager.P rocessShortcut(Message& m, Keys shortcut)
   at System.Windows.Forms.ToolStripManager.P rocessCmdKey(Message& m, Keys keyData)
   at System.Windows.Forms.ContainerControl.P rocessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Form.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.ProcessCmd Key(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.ProcessCmd Key(Message& msg, Keys keyData)
   at System.Windows.Forms.ContainerControl.P rocessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Form.ProcessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.ProcessCmd Key(Message& msg, Keys keyData)
   at System.Windows.Forms.ContainerControl.P rocessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.ProcessCmd Key(Message& msg, Keys keyData)
   at System.Windows.Forms.ContainerControl.P rocessCmdKey(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.ProcessCmd Key(Message& msg, Keys keyData)
   at System.Windows.Forms.Control.PreProcess Message(Message& msg)
   at System.Windows.Forms.Control.PreProcess ControlMessageInternal(Control target, Message& msg)
   at System.Windows.Forms.Application.Thread Context.PreTranslateMessage(MSG& msg)


Followed by this
Spoiler: ShowHide

---------------------------
Adventure Game Studio
---------------------------
A serious error occurred and the AGS Editor may now be in an unstable state. You are STRONGLY ADVISED to shut down the editor and restart it. Before saving your work, make a backup copy of your game folder in case any data has been corrupted.



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

   at ccCompileText(SByte* , SByte* )

   at AGS.Native.NativeMethods.CompileScript(Script script, String[] preProcessedScripts, Game game, Boolean isRoomScript)

   at AGS.Editor.NativeProxy.CompileScript(Script script, String[] preProcessedData, Game game, Boolean isRoomScript)

   at AGS.Editor.AGSEditor.CompileScript(Script script, List`1 headers, CompileMessages errors, Boolean isRoomScript)

   at AGS.Editor.AGSEditor.CompileScripts(Object parameter)

   at AGS.Editor.BusyDialog.RunHandlerOnThrea d()

   --- End of inner exception stack trace ---

   at AGS.Editor.BusyDialog.Show(String message, ProcessingHandler handler, Object parameter)

   at AGS.Editor.AGSEditor.CompileGame(Boolean forceRebuild, Boolean createMiniExeForDebug)

   at AGS.Editor.Components.BuildCommandsComp onent.CompileGame(Boolean forceRebuild)

   at AGS.Editor.Components.BuildCommandsComp onent.CommandClick(String controlID)

   at AGS.Editor.GUIController._mainForm_OnMe nuClick(String menuItemID)

   at AGS.Editor.MainMenuManager.MenuEventHan dler(Object sender, EventArgs e)

   at System.Windows.Forms.ToolStripItem.Rais eEvent(Object key, EventArgs e)

   at System.Windows.Forms.ToolStripMenuItem. OnClick(EventArgs e)

   at System.Windows.Forms.ToolStripItem.Hand leClick(EventArgs e)

   at System.Windows.Forms.ToolStripItem.Fire EventInteractive(EventArgs e, ToolStripItemEventType met)

   at System.Windows.Forms.ToolStripItem.Fire Event(EventArgs e, ToolStripItemEventType met)

   at System.Windows.Forms.ToolStripMenuItem. ProcessCmdKey(Message& m, Keys keyData)

   at System.Windows.Forms.ToolStripManager.P rocessShortcut(Message& m, Keys shortcut)

   at System.Windows.Forms.ToolStripManager.P rocessCmdKey(Message& m, Keys keyData)

   at System.Windows.Forms.ContainerControl.P rocessCmdKey(Message& msg, Keys keyData)

   at System.Windows.Forms.Form.ProcessCmdKey(Message& msg, Keys keyData)

   at System.Windows.Forms.Control.ProcessCmd Key(Message& msg, Keys keyData)

   at System.Windows.Forms.Control.ProcessCmd Key(Message& msg, Keys keyData)

   at System.Windows.Forms.ContainerControl.P rocessCmdKey(Message& msg, Keys keyData)

   at System.Windows.Forms.Form.ProcessCmdKey(Message& msg, Keys keyData)

   at System.Windows.Forms.Control.ProcessCmd Key(Message& msg, Keys keyData)

   at System.Windows.Forms.ContainerControl.P rocessCmdKey(Message& msg, Keys keyData)

   at System.Windows.Forms.Control.ProcessCmd Key(Message& msg, Keys keyData)

   at System.Windows.Forms.ContainerControl.P rocessCmdKey(Message& msg, Keys keyData)

   at System.Windows.Forms.Control.ProcessCmd Key(Message& msg, Keys keyData)

   at System.Windows.Forms.Control.PreProcess Message(Message& msg)

   at System.Windows.Forms.Control.PreProcess ControlMessageInternal(Control target, Message& msg)

   at System.Windows.Forms.Application.Thread Context.PreTranslateMessage(MSG& msg)
---------------------------
OK   
---------------------------

Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Radiant on 01 Nov 2014, 19:50
Downloading most recent version... same thing.

Spoiler: ShowHide
Error: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Version: AGS 3.4.0.1

System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt. ---> System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
   at ccCompileText(SByte* , SByte* )
   at AGS.Native.NativeMethods.CompileScript(Script script, String[] preProcessedScripts, Game game, Boolean isRoomScript)
   at AGS.Editor.NativeProxy.CompileScript(Script script, String[] preProcessedData, Game game, Boolean isRoomScript)
   at AGS.Editor.AGSEditor.CompileScript(Script script, List`1 headers, CompileMessages errors, Boolean isRoomScript)
   at AGS.Editor.AGSEditor.CompileScripts(Object parameter)
   at AGS.Editor.BusyDialog.RunHandlerOnThrea d()
   --- End of inner exception stack trace ---
   at AGS.Editor.BusyDialog.Show(String message, ProcessingHandler handler, Object parameter)
   at AGS.Editor.AGSEditor.CompileGame(Boolean forceRebuild, Boolean createMiniExeForDebug)
   at AGS.Editor.Components.BuildCommandsComp onent.CompileGame(Boolean forceRebuild)
   at AGS.Editor.Components.BuildCommandsComp onent.CommandClick(String controlID)
   at AGS.Editor.GUIController._mainForm_OnMe nuClick(String menuItemID)
   at AGS.Editor.MainMenuManager.MenuEventHan dler(Object sender, EventArgs e)
   at System.Windows.Forms.ToolStripItem.Rais eEvent(Object key, EventArgs e)
   at System.Windows.Forms.ToolStripMenuItem. OnClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.Hand leClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.Hand leMouseUp(MouseEventArgs e)
   at System.Windows.Forms.ToolStripItem.Fire EventInteractive(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStripItem.Fire Event(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStrip.OnMouseU p(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.ControlNat iveWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNat iveWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callb ack(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Crimson Wizard on 01 Nov 2014, 20:08
@Radiant, this is caused by a function returning dynamic array (e.g. String[]).
We have this fixed, the new version will be released in a short while.
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Radiant on 01 Nov 2014, 20:19
I'm pretty sure that's not what's causing it, though... let me see if I can narrow it down.
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Crimson Wizard on 01 Nov 2014, 20:38
I'm pretty sure that's not what's causing it, though... let me see if I can narrow it down.
Maybe something else?
Here's a version of dll I made for Knox when he got this crash (applied over 3.4.0.1). It writes a compilation log to your project folder:
http://www.mediafire.com/download/1ti78s6mn4jn5sp/AGS.Native.dll.zip

The last script it mentions should be causing a problem.
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Radiant on 02 Nov 2014, 08:25
Hm, with that new DLL I haven't had crashes so far. So it may be fixed now; however the crash didn't always reproduce, even from the same code, so I'll keep an eye out.
Title: Re: AGS 3.4.0.1 Alpha 2 Custom Game Resolution
Post by: Crimson Wizard on 05 Nov 2014, 19:12
Hm, with that new DLL I haven't had crashes so far. So it may be fixed now; however the crash didn't always reproduce, even from the same code, so I'll keep an eye out.
This dll is built right on 3.4.0.1, it should not have any changes except for the aforementioned log.
So this crash might not be happening all times (which is not good).
Title: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 12 Nov 2014, 18:51
AGS 3.4.0.2 (Alpha) - Multi Platform Build

ZIP-archive:
http://www.mediafire.com/download/jajm3z7v2z8480m/AGS_3.4.0.2-Alpha3-MultiPlatformBuild.zip



What's new since 3.4.0.1:

Editor

Building for multiple platforms
The Editor can now build for several different platforms. This is configured with this new option in General Settings (Compiler -> Build target platforms):

(http://i.imgur.com/PlbtQ3u.png)

Select the platforms you like to build the game for by pressing on "drop down" button to the right and checking or unchecking items in the list:

(http://i.imgur.com/N4UaLWg.png)

"DataFile" builds a game data file, and cannot be unchecked. Other targets may be selected in any combination.
More platforms will be added in time.
Note, this only affects doing full build (Build -> Build EXE / Rebuild all files). When running in test mode only Windows version is built always.

The "Compiled" folder has changed. Now each platform has its own subdirectory: "Windows", "Linux", etc. To distribute your game - pack/copy contents of corresponding folder(s).


Important internal change to game compilation
The game compilation was rewritten to comply the needs of future development. The way Editor works should NOT change because of this.
However, if you encounter any errors during compilation or your game is introducing bizzare behavior after updating to this version, use following option in Editor Preferences to enable old compiler:

(http://i.imgur.com/8RYWwgb.png)

NOTE: this option will be removed after we become sure that everything works correct.

Bug Fixes
* Fixed a crash when trying to run game setup from editor while "Compiled" folder does not exist.
* Fixed a crash when compiling functions returning dynamic array of strings (String[]) (introduced in 3.3.1/3.4.0).


Script API
AudioChannel.Speed.
The new property used to get or set audio clip's playback speed. The value is defined in clip's milliseconds per second; 1000 is default, meaning 1000 of clip's ms in 1 real second (scale 1:1). Set < 1000 for slower play and > 1000 for faster play.
NOTE: the engine will also map "AudioChannel.SetSpeed" function to this property, therefore you can run Gord10's "Self" game using new interpreter (e.g. on Linux).


Engine
Improvements
* In 32-bit games DrawingSurface.DrawImage() now properly applies overall transparency when drawing opaque sprites over surfaces with alpha channel.

Bug Fixes
* Fixed a bug that caused MP3 clip continuously increase its base volume if the directional volume modifier was applied.
* Fixed a bug that prevented to apply requested graphics filter scaling amount (broken in 3.4.0.1).
* Fixed GUI sliders acted as if the mouse button is held down since game start (introduced in 3.4.0.1).
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: monkey0506 on 12 Nov 2014, 19:46
Just a note, but this also includes a bug fix for the crash when running the setup if the "Compiled" folder didn't exist (https://github.com/monkey0506/ags/commit/e6385159c45209abeca8182c9ab707f4f198a10e) (not sure when this showed up, but it's fixed now).

Also, yay! :-D
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 12 Nov 2014, 20:07
Just a note, but this also includes a bug fix for the crash when running the setup if the "Compiled" folder didn't exist (https://github.com/monkey0506/ags/commit/e6385159c45209abeca8182c9ab707f4f198a10e) (not sure when this showed up, but it's fixed now).
True, 3.2.1 has this bug. Added to change notes.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: monkey0506 on 12 Nov 2014, 20:21
Another problem: 3.4.0.2 doesn't run on Android either (3.3.2 does). I'm looking into what's causing it, but there's no error message given.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 12 Nov 2014, 20:23
Another problem: 3.4.0.2 doesn't run on Android either (3.3.2 does). I'm looking into what's causing it, but there's no error message given.
Tadam... https://github.com/adventuregamestudio/ags/issues/198 :P
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: monkey0506 on 12 Nov 2014, 22:31
Didn't realize there was an existing issue for it. My bad. ;) But I'm glad to try and help sort it out.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 12 Nov 2014, 22:35
Didn't realize there was an existing issue for it. My bad. ;) But I'm glad to try and help sort it out.
I was supposed to set up Android tools myself, but somehow forgot about this. I'll see if I can do that in the end of this week.

My guess is that OpenGL driver needs some extra stub, or just get properly implemented.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Gurok on 12 Nov 2014, 23:31
Okay, just playing around with the test game, I noticed that setting "Split resource files into X MB-sized chunks" to a value > 0 (I set it to 9999) creates a Windows .exe that fails to find its sprite file. Was this something that was going to be fixed with hard links? I don't remember.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: monkey0506 on 13 Nov 2014, 00:56
Hmm... It seems like it's not copying (hard linking) the *.001 file. ??? For now, you can just copy this from the Compiled folder to Compiled/Windows. I'm on it. :-\
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Dualnames on 13 Nov 2014, 01:42
Hey guys I know it's not a big thing, but since almost all classes have that, could we do it for Characters too? For the sake of consistency? Which means adding a function SetPosition(int x, int y);

It's silly that I'm copying a function so many games now, just because it's so annoying to do
Code: [Select]
cEgo.X=667;
cEgo.Y=665;

Regardless, I'm intrigued, excellent work.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: abstauber on 13 Nov 2014, 07:12
Regarding the multi-platform abilities: I'm using the joystick plugin by Wyz, which isn't opensourced (yet?).
Are there any macros I can use to hide it from the linux build?

Apart from that my project still compiles and works fine.


edit: another minor thing: Since you are working on the compiler.. could you do something against the warnings.log please (Dynamic sprites were never deleted because I had no chance ) ?
That would be a wonderful improvement :)
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 13 Nov 2014, 08:36
Regarding the multi-platform abilities: I'm using the joystick plugin by Wyz, which isn't opensourced (yet?).
Are there any macros I can use to hide it from the linux build?
Linux version has stubs for this plugin (it registers functions that do nothing).
BTW, that reminds me...  (https://github.com/adventuregamestudio/ags/issues/111)
Also, about automatic stubs generator (can't find the link).


edit: another minor thing: Since you are working on the compiler.. could you do something against the warnings.log please (Dynamic sprites were never deleted because I had no chance ) ?
Compiler has nothing to do with warnings.log, it is engine that writes it.
Plan was to move all these warning to common log file, written only by request (see explanation to 3.3.0 version).
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: abstauber on 13 Nov 2014, 10:44
Ah okay, thanks for the info. Is there still a way to detect the current build version? It wouldn't make much sense to show joystick settings which doesn't do anything :)

Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 13 Nov 2014, 11:24
Ah okay, thanks for the info. Is there still a way to detect the current build version? It wouldn't make much sense to show joystick settings which doesn't do anything :)

Hmm... I think you may use new API function Game.IsPluginLoaded(). It tells if plugin functionality is really present (in either linked or built-in way).
Code: Adventure Game Studio
  1. if (Game.IsPluginLoaded("agsjoy"))
  2. {
  3. }
  4. else
  5. {
  6. }
  7.  

If you do, this will be the first time this method actually becomes useable :)
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: abstauber on 13 Nov 2014, 13:01
Code: [Select]
            _
           /(|
          (  :
         __\  \  _____
       (____)  `|
      (____)|   |
       (____).__|
        (___)__.|_____
:D
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: monkey0506 on 13 Nov 2014, 14:01
In the mean time you could check System.OS, though that would break if a real replacement were used in place of the stub.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Gord10 on 14 Nov 2014, 20:48
I can't run Linux built games in Ubuntu 14.04 LTS :(

ahmet@ubuntu:/media/ahmet/AHMETKELES/Linux$ ls
data  DemoGame
ahmet@ubuntu:/media/ahmet/AHMETKELES/Linux$ sudo sh DemoGame
DemoGame: 14: DemoGame: /media/ahmet/AHMETKELES/Linux/data/ags32: Permission denied

ahmet@ubuntu:/media/ahmet/AHMETKELES/Linux$ cd data
ahmet@ubuntu:/media/ahmet/AHMETKELES/Linux/data$ ./ags32
bash: ./ags32: Permission denied
ahmet@ubuntu:/media/ahmet/AHMETKELES/Linux/data$ sudo ./ags32
sudo: ./ags32: command not found
ahmet@ubuntu:/media/ahmet/AHMETKELES/Linux/data$ sh ags32
ags32: 1: ags32: Syntax error: "(" unexpected


Trying to run ags32 from the file manager, I get "Ooops! Unable to locate the program" error.

Additionally; I can't compile games for Windows when I'm in Windows 7. "Cannot create hard link! Source file does not exist"


Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: monkey0506 on 14 Nov 2014, 22:25
I tested the compiled files this outputs on Linux Mint 17 and it ran fine for me. What permissions does it show for the file?

I'm looking into the hard link code as well. :-X
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Gord10 on 15 Nov 2014, 23:22
Changing Allow executing file as program of ags32 made me advance to the next error:

AGS: Initializing game data
AGS: Game data file could not be found

ERROR: Unable to find game data files
 
It apparently runs ags32; calling ags32 from terminal gives me the same result for the Linux-compiled game.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: monkey0506 on 15 Nov 2014, 23:36
I made a test build with possible fixes for both the hard linking errors and the Linux engines not running.

https://bitbucket.org/monkey0506/ags/downloads/3.4.0.2-test.rar

Could you please try this out and see if it resolves anything?

I forgot that the "mklink" program requires being run as an administrator. From what I read on Stack Overflow, I think this should raise a UAC prompt to elevate the task if not running as an administrator.

As for the Linux script, I've attempted to set it as executable for everyone instead of just the user group.

With the error that it can't find the game data files, could you confirm that you have "ac2game.dta" in the same directory as "ags32"? If you're having hard linking issues then it's possible it didn't link that file properly, but you could also try copying Compiled/YOURGAMENAME.000 to Compiled/Linux/data/ac2game.dta (shouldn't be necessary once the hard linking issues are sorted out).

Edit: The missing resource files in the Windows file was actually my fault. I failed to recognize that the folder name was included when using a filemask in Utilities.GetDirectoryFileList.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Gord10 on 16 Nov 2014, 18:41
I tried it with two different projects (Demo Game and an Empty Game with a background and music). Strangely, it gives different results for them two.

An EmptyGame.exe is produced under Linux/data. No exe files for Demo Game's Linux folders. Running EmptyGame in Linux runs the game (after setting permissions of ags32 and EmptyGame for executing), but no visual is seen. Screen is pitch black. Deleting exe file gives me "Unable to find game data files" error, even though ac2game.dta exists in the folder of ags32. Copy+pasting EmptyGame.000 there didn't change anything. It doesn't run without EmptyGame.exe.

For DemoGame, I couldn't have it run work in anyway. It seems to be in need of an exe, which didn't get produced.


Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: monkey0506 on 16 Nov 2014, 19:22
That doesn't match what I'm getting at all. I'll test it on a different computer this afternoon.

Edit: It occurred to me that the problem may lie in the fact that I never did anything to ensure that the EXE was deleted when upgrading to 3.4.0.2. This would explain the erroneous EXE, but I'm looking into the other issues.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: abstauber on 18 Nov 2014, 08:42
hmm... I just realized, that I'm using joystick.click to start dialog topics, since there is no mouse.click. So Linux has to wait, until I've learned C++ and add that function to the engine :)
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 18 Nov 2014, 09:06
hmm... I just realized, that I'm using joystick.click to start dialog topics, since there is no mouse.click. So Linux has to wait, until I've learned C++ and add that function to the engine :)
Alright, I'll add it. :)
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: abstauber on 18 Nov 2014, 09:33
x1 x2 x4 x8
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 18 Nov 2014, 09:41
Actually, you need a variant of ProcessClick, that works on GUI, right?
Fully simulating mouse click might be not that easy in AGS, because of how scripts work.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: abstauber on 18 Nov 2014, 09:58
In the first place I just need a way to start dialog topic by keyboard.
Here's an example - I'm recreating an oldschool JRPG talk gui, which is controlled by the keyboard:
(http://shatten.sonores.de/wp-content/uploads/2014/11/krokus_dialog.png)

To move the marker and to select the topic I'm doing something like this:
Code: Adventure Game Studio
  1.  
  2.   if (isUpKeyDown && !IsKeyPressed(controls.Up) {
  3.     keyboard_cnt--;
  4.     if (keyboard_cnt <0) keyboard_cnt = kbd_last_option;
  5.     CDG.active_opt_id = kbd_options[keyboard_cnt].id;
  6.     Mouse.SetPosition(0, mouse.y);
  7.     Joystick.Click(eMouseLeft);
  8. }
  9.  
Since the dialog topic surface isn't refreshable, I'm moving the hidden mouse out of the way and abuse the joystick plugin to refresh it.

To start the topic I'm placing the hidden cursor on the topic and click again with the joystick.
Code: Adventure Game Studio
  1.  
  2.   if (IsSelectKeyDown && !IsKeyPressed(interact_key)) {
  3.     if (CDG.active_opt_id >0) {
  4.       Mouse.SetPosition(kbd_options[keyboard_cnt].xpos, kbd_options[keyboard_cnt].ypos);
  5.       Joystick.Click(eMouseLeft);
  6.     }
  7.   }
  8.  

So the easy way out would be Mouse.click, although the better approach might be the suggestion I've added to the tracker a few month ago.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 18 Nov 2014, 10:14
Oh. A big script update is due then...

I found how plugins simulate clicks. Looks like script can use same technique too.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: abstauber on 18 Nov 2014, 10:21
It would be gorgeous, if that would work.
Dialog scripting hasn't seen much love after custom dialog rendering was introduced ;)
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Blackthorne on 18 Nov 2014, 14:22
As far as dialogue scripting goes, it'd be nice to tie "DisplayTopBar" to characters.  Often with NPCs without a portrait in Sierra Style Games, I use this.


Bt
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 18 Nov 2014, 14:34
As far as dialogue scripting goes, it'd be nice to tie "DisplayTopBar" to characters.  Often with NPCs without a portrait in Sierra Style Games, I use this.
This may be related to custom speech style and/or individual speech style idea.
Can you make an issue in tracker?
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: amateurhour on 19 Nov 2014, 19:46
First off, just a thanks to everyone that worked on this version. I've been mostly playing with Unity and GameMaker for the last year or so and I came back to find that there's a multi-platform build in the works, which is awesome!

Two quick questions - 1) Does this new build support OSX or just Win/Linux? And are there still Allegro issues with OSX builds or are they pretty stable?

                      2) Does this build have a "no .mp3 licensing" version or is it strictly not for retail game use?

Thanks!     
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 19 Nov 2014, 21:29
1) Does this new build support OSX or just Win/Linux? And are there still Allegro issues with OSX builds or are they pretty stable?
No, this version does not support OSX.
There's a version of the engine made by HumbleBundle for Wadjet Eye that works on OSX, but it was made in a questionable way (code-wise), by substituting parts of Allegro with SDL (so doubling libraries), so we could not accept it as it is. However, I belive it is possible to merge our latest code with that build and get a combined version working on OSX.

2) Does this build have a "no .mp3 licensing" version or is it strictly not for retail game use?
No-mp3 version is not in the 3.4.0 package, but it is a 5-minutes task to build one.
Thing is that this is alpha, and may be unstable anyway, so I don't bother to include No-MP3.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: amateurhour on 19 Nov 2014, 22:28
Thanks for the explanation!
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Matti on 22 Nov 2014, 11:18
I'm using this build for a few days now, primarily because of the unlimited GUI controls, and it works like a charm.

Thanks for the work you guys put into this, all the improvements are great!
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Blackthorne on 24 Nov 2014, 00:29
In trying to build the .exe of my game, I keep getting this error.

Unexpected error: Cannot create hard link! Source file does not exist.



Bt
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Meekah on 24 Nov 2014, 16:26
Hey guys! I just added this to my pc and am VERY excited to use it. However every time I try to compile I keep getting this error message:

---------------------------
Illegal exception
---------------------------
An exception 0xC0000005 occurred in ACWIN.EXE at EIP = 0x00473FB5 ; program pointer is -3, ACI version 3.4.0.1, gtags (2039,36)

AGS cannot continue, this exception was fatal. Please note down the numbers above, remember what you were doing at the time and post the details on the AGS Technical Forum.



Most versions of Windows allow you to press Ctrl+C now to copy this entire message to the clipboard for easy reporting.

An error file CrashInfo.dmp has been created. You may be asked to upload this file when reporting this problem on the AGS Forums. (code 0)
---------------------------
OK   
---------------------------
 
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 27 Nov 2014, 09:10
Meekah, I apologize for delayed answer.
Unfortunately I did not keep required files to help me read crash dumps from 3.4.0.1.
Have you just started to make a game, or imported from older AGS?
If you just started, which template do you use? Is it possible for you to send me your game project for inspection?
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Gurok on 28 Nov 2014, 18:57
I was playing around with the head last night and I think I found an oversight with the new compiler (linker?). Translation files (*.tra) weren't copied to the Windows platform directory inside Compiled. The resulting .exe couldn't find any translations. :/
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 28 Nov 2014, 20:46
I was playing around with the head last night and I think I found an oversight with the new compiler (linker?). Translation files (*.tra) weren't copied to the Windows platform directory inside Compiled. The resulting .exe couldn't find any translations. :/
Please post this here: http://www.adventuregamestudio.co.uk/forums/index.php?topic=51289.0
I made a separate thread to gather all problems with the new compiler.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Monsieur OUXX on 29 Nov 2014, 01:48
* In 32-bit games DrawingSurface.DrawImage() now properly applies overall transparency when drawing opaque sprites over surfaces with alpha channel.
Could someone explain to me what that means exactly, with an example of what it did before and what it does now?
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 29 Nov 2014, 01:49
* In 32-bit games DrawingSurface.DrawImage() now properly applies overall transparency when drawing opaque sprites over surfaces with alpha channel.
Could someone explain to me what that means exactly, with an example of what it did before and what it does now?


In prior versions if you'd draw a sprite w/o alpha channel over destination with alpha using DrawingSurface.DrawImage, the "transparency" parameter would not be applied.
Now it should be.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Monsieur OUXX on 29 Nov 2014, 11:03
In prior versions if you'd draw a sprite w/o alpha channel over destination with alpha using DrawingSurface.DrawImage, the "transparency" parameter would not be applied. Now it should be.

Ok, thanks a lot.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: OneDollar on 05 Dec 2014, 15:27
I was playing around with this and noticed that the minimum resolution for the height is capped at 128 pixels. Is there a technical reason for this? I was thinking of doing something at 160x100 (half of 320x200). Otherwise I'm really excited about the resolution changes!
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 05 Dec 2014, 16:08
I was playing around with this and noticed that the minimum resolution for the height is capped at 128 pixels. Is there a technical reason for this? I was thinking of doing something at 160x100 (half of 320x200). Otherwise I'm really excited about the resolution changes!

Hahah. Seriously, I wasn't sure if anyone would need a resolution lower than 320x200, so I used that made up number.
I think, on some occasion Allegro could not init a window smaller than 128x128, but I don't remember for sure; and then again you can use scaling filters.

So, I can certainly lower the limits down to ... 1x1 ... and see what happens.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: selmiak on 05 Dec 2014, 19:56
yay, don't push the pixel coming in soon! ;-D
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Calin Leafshade on 10 Dec 2014, 20:55
I've got some weirdness with the new compiler and for loops. Something weird is happening.

Take this short piece of code

Code: Adventure Game Studio
  1.     Display("%d", top);
  2.         for(y = start; y < h; y++) {
  3.                 bool found = false;
  4.                 for(x = 0; x < w; x++) {
  5.                         p = ds.GetPixel(x,y);
  6.                         if(p != COLOR_TRANSPARENT) {
  7.                                 found = true;
  8.                                 break;
  9.                         }
  10.                 }
  11.                 if (!found) {
  12.                         bottom = y;
  13.                         break;
  14.                 }
  15.         }
  16.         Display("%d", top);
  17.  

The display at the top shows 5 and the display at the bottom shows 10 despite the top variable never being altered.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Gurok on 10 Dec 2014, 21:25
Thanks, Calin. After our chat on IRC, I think it's the combination of a variable declaration inside a loop with a break. This is enough to give me "stack pointer was not zero at completion of script":

Code: [Select]
function breakBreak() {
int y;

for(y = 0; y < 10; y++)
{
bool found = false;
if(y == 5)
break;
}
}

Inner variable declarations aren't being dealt with properly. I'll look into this ASAP.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Calin Leafshade on 10 Dec 2014, 23:24
Also I'm getting the same hard link error that blackthorne is getting.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Gurok on 13 Dec 2014, 21:11
Okay, Calin. There's a pull request to fix that bug now.

To the people getting a hard link error, does your game have a .vox file?
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Calin Leafshade on 13 Dec 2014, 21:44
Mine doesn't, no.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: raulpuro on 17 Dec 2014, 21:35
Hi,

Great job, the new Winsetup, even works with compiled projects on older versions. Congratulations.

Greetings.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Calin Leafshade on 21 Dec 2014, 22:12
Am I correct in thinking that one needs admin permissions to compile a game now? That is totally mental.

Whats the purpose of the hard linking anyway? Can't you just pass a folder to the exe which contains the data files or alternatively just use the working directory.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 21 Dec 2014, 22:15
Am I correct in thinking that one needs admin permissions to compile a game now? That is totally mental.
I believe monkey_05_06 is looking for the proper fix now.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: monkey0506 on 22 Dec 2014, 08:18
Whats the purpose of the hard linking anyway?

I've brought this up several times, but in order to have each platform build to a separate deployable folder instead of stupidly throwing all of the files into some horrific conglomerate mess, the editor has to either a) copy every game resource file or b) hard link those resource files. When your game resource files reach into the gigabytes, copying them for each individual platform is, as you say, mental. Hard linking these files is the most sensible way of approaching this problem.

And to quell your fears, I've gotten it working just fine from a non-administrator account.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: .rhavin on 22 Dec 2014, 21:26
Damn, i just stumpled upon this game-studio and you're just implementing basic functionallity i'd need without the restrictions they currently have, e.g. i'd need your 'managed structs' with the ability to hold a dynamic array of structs. :-((

that  of course – doesnt mean that i dont appreciate all the work you already have done!
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 22 Dec 2014, 21:29
Damn, i just stumpled upon this game-studio and you're just implementing basic functionallity i'd need without the restrictions they currently have, e.g. i'd need your 'managed structs' with the ability to hold a dynamic array of structs. :-((

that  of course – doesnt mean that i dont appreciate all the work you already have done!

.rhavin, the AGS is a 16 years old program, which started as a DOS engine. Its author has recently made it open source.
The program is very old and quite outdated in particular features.
What we do here, is trying to improve it where possible. We mainly aim to support the old community that has a grasp on the studio and can deal with its limitations.
There's no guarantee it will suit your needs. Also, there's no guarantee it will approach or surpass more modern engines and game studios in its functionality.

Regarding the script feature you mention, we have its improvement planned.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: monkey0506 on 23 Dec 2014, 19:57
Besides, people have made adventure games without that feature for decades. Not to mention you can effectively work around it in code (with some obvious speed penalties, if you're accessing them hundreds or thousands of times per second).
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 23 Dec 2014, 23:00
Besides, people have made adventure games without that feature for decades. Not to mention you can effectively work around it in code (with some obvious speed penalties, if you're accessing them hundreds or thousands of times per second).
Well... it is not really a reason not to implement it :).

I just meant to say that AGS may unfortunately have surprizes like this, because its rather old.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: monkey0506 on 24 Dec 2014, 03:01
I meant that it's hardly a justification (in itself) for not using AGS. ;)
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: proximity on 28 Dec 2014, 17:36
Wohhaaaa ! Excellent work ! I am especially tempted by modern resolutions. Can we expect unlimited number of sprites ?

Chris told me that : "The limit could easily be increased to 32767 sprites, but the problem is that the AGS Engine internally uses a 16-bit int in various places when dealing with sprite numbers. So to raise it higher than that or remove it completely, would require the engine to be changed to use 32-bit ints for sprite numbers.

So basically, yes it can be done, but it's a non-trivial change."

Is that possible to you ? Thanks.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 28 Dec 2014, 18:15
Wohhaaaa ! Excellent work ! I am especially tempted by modern resolutions. Can we expect unlimited number of sprites ?

Chris told me that : "The limit could easily be increased to 32767 sprites, but the problem is that the AGS Engine internally uses a 16-bit int in various places when dealing with sprite numbers. So to raise it higher than that or remove it completely, would require the engine to be changed to use 32-bit ints for sprite numbers.

So basically, yes it can be done, but it's a non-trivial change."

Is that possible to you ? Thanks.

Well, what Chris told is how it is; I had some changes planned, but it's difficult to tell when this will happen. I have few more important changes I need to do first.

Regarding sprites, the sprite cache might need to be rewritten to use different kind of storage. Currently it uses plain array, we might want to change to hash map to also allow larger non-sequential sprite IDs.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 28 Dec 2014, 18:19
Regarding current task at hand, is there any quick changes someone wants to put into 3.4.0?
I am thinking about making a 3.4.0.3 alpha release soon.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Adeel on 28 Dec 2014, 18:28
Tried checking "Run in a window instead of full-screen" checkbox and got a fatal error:

Spoiler: ShowHide
---------------------------
Illegal exception
---------------------------
An exception 0xC0000094 occurred in ACWIN.EXE at EIP = 0x0049C0E5 ; program pointer is -196, ACI version 3.4.0.2, gtags (0,0)

AGS cannot continue, this exception was fatal. Please note down the numbers above, remember what you were doing at the time and post the details on the AGS Technical Forum.



Most versions of Windows allow you to press Ctrl+C now to copy this entire message to the clipboard for easy reporting.

An error file CrashInfo.dmp has been created. You may be asked to upload this file when reporting this problem on the AGS Forums. (code 0)
---------------------------
OK   
---------------------------


I get the same fatal error whenever I try to check it. Here's the Crash Dump (https://www.dropbox.com/s/6xzkt4flvttqusr/CrashInfo.3.4.0.2.dmp?dl=0). Rebuilding the files didn't help. Game's resolution is 1280 x 1024 (which happens to be my desktop resolution as well). Game runs fine in Windowed mode within the editor or if you edit the acsetup.cfg manually, btw.

I'll be using this version from now on so expect lots of feedback. :tongue:
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: proximity on 28 Dec 2014, 20:41
Wohhaaaa ! Excellent work ! I am especially tempted by modern resolutions. Can we expect unlimited number of sprites ?

Chris told me that : "The limit could easily be increased to 32767 sprites, but the problem is that the AGS Engine internally uses a 16-bit int in various places when dealing with sprite numbers. So to raise it higher than that or remove it completely, would require the engine to be changed to use 32-bit ints for sprite numbers.

So basically, yes it can be done, but it's a non-trivial change."

Is that possible to you ? Thanks.

Well, what Chris told is how it is; I had some changes planned, but it's difficult to tell when this will happen. I have few more important changes I need to do first.

Regarding sprites, the sprite cache might need to be rewritten to use different kind of storage. Currently it uses plain array, we might want to change to hash map to also allow larger non-sequential sprite IDs.

Thanks. I will be waiting for it. Just don't rush ;)
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Knox on 29 Dec 2014, 03:11
Regarding current task at hand, is there any quick changes someone wants to put into 3.4.0?
I am thinking about making a 3.4.0.3 alpha release soon.

Hi Crimson, we already have limits removed for gui controls (yay!)...but I was wondering if adding the limit removal of custom properties is a "quick change" so it can make it to 3.4.0.3 alpha?
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 29 Dec 2014, 08:38
Regarding current task at hand, is there any quick changes someone wants to put into 3.4.0?
I am thinking about making a 3.4.0.3 alpha release soon.

Hi Crimson, we already have limits removed for gui controls (yay!)...but I was wondering if adding the limit removal of custom properties is a "quick change" so it can make it to 3.4.0.3 alpha?

IIRC that should be pretty simple, but I'll double check later today.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Calin Leafshade on 30 Dec 2014, 00:10
The new build system seems to not work at all.

My game works when i debug it but when doing a full compile it creates two files a mygame.exe in the Compiled folder which windows complains is a 16-bit exe and a mygame.exe in the windows folder which says "Cant find game files."

How is this supposed to work? Am i doing somethign wrong?
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: monkey0506 on 30 Dec 2014, 01:02
There were some last minute changes which weren't thoroughly tested before they were committed into this version. That's my fault, and has been fixed for the next alpha release (which should be out soon).
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Knox on 30 Dec 2014, 17:24
IIRC that should be pretty simple, but I'll double check later today.
Awesome, thanks!
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Calin Leafshade on 01 Jan 2015, 16:46
There seems to a problem with sound in the new version. It seems to randomly cut off sounds for no reason. Some times it works and other times it doesnt. The same seems to happen for MP3 and OGG.

EDIT: Also, winsetup doesn't seem to exit properly on close.

EDIT EDIT: Seems the sound issue persists in 3.3.0 (custom res)

EDIT X 3: It seems that AGS is not properly releasing audio channels.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 02 Jan 2015, 18:54
There seems to a problem with sound in the new version. It seems to randomly cut off sounds for no reason. Some times it works and other times it doesnt. The same seems to happen for MP3 and OGG.
Was you able to get any specifics which would help to reproduce it?

EDIT: Also, winsetup doesn't seem to exit properly on close.
Are you building debug version of the project? There is a known bug that Debug version hangs running on certain circumstances.

EDIT EDIT: Seems the sound issue persists in 3.3.0 (custom res)
You mean 3.4.0.1 ? 3.3.0 had no custom resolutions.

EDIT X 3: It seems that AGS is not properly releasing audio channels.
Can you elaborate, what made you think so? Any details please?
Are you running with or without threaded audio option?
Are you running on Linux maybe? Recently I've fixed a bug on Linux that caused game crash when releasing audio clip.

Can you give just any details of what you do?
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Calin Leafshade on 02 Jan 2015, 19:31
Very sorry for the shitty bug reports. I was making my MAGS game and was very stressed about the timing.

I will be more clear now.

The winsetup issue was probably due using a debug version because i was building the engine myself.

The audio issue persists all the way back to earlier versions though.

I was using the new audio system and occasionally sounds would either cut off or just not play. I assigned them to the Sound type and played them as normal with aClip.Play().
All the priority settings were default and i tried wav,mp3 and ogg all to the same effect.

Then I made a new sound type called "GameSounds" and assigned all the audio clips to that and it seemed to solve the problem.

Here is a version of the game exhibiting the problem. Its a 3.4.0.2 project: https://dl.dropboxusercontent.com/u/27247158/deepunssrcwerror.zip

You'll notice that the thuds on the door sound fine to begin with until like the 5th or 6th thud at which point they become cut off and muted.
The same thing happens on 3.3.0 CR

I tried with threaded audio and without and it doesnt seem to help.
This was running on windows. I havent checked other OSes.

Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 02 Jan 2015, 20:01
Alright, I see. I will test that through.
Is it the source of your MAGS game? I dled it recently too.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Calin Leafshade on 02 Jan 2015, 20:12
This is an incomplete version of the source to the MAGS game. Near the end of the development I switch back to an earlier version of AGS because this version was too unstable (I later found out the issue extended back further so oops)

If you want to play my game first then dont use this source until you have :>
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 02 Jan 2015, 22:57
Then I made a new sound type called "GameSounds" and assigned all the audio clips to that and it seemed to solve the problem.
Hm, can you tell, which properties this audio type had?
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Calin Leafshade on 02 Jan 2015, 23:04
The default settings.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 03 Jan 2015, 00:03
Calin, this problem is related to the following script:

Sounds.asc
Code: Adventure Game Studio
  1. function repeatedly_execute_always() {
  2.     int delta = -5;
  3.     if (windy)
  4.         delta = 5;
  5.     windChannel.Volume = Maths.ClampInt(windChannel.Volume + delta,  0,  windVol);
  6. }
  7.  

If I remove the call to windChannel.Volume, the sound continues to play normally.

I should note that the Wind clip is not repeated by default, nor asked to play repeatedly, so it is supposed to stop soon after running. Yet you continue to set channel's volume all the time through the game.

I am not yet sure how it works internally, maybe this causes corruption in data or some conflict. I'll investigate further.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Calin Leafshade on 03 Jan 2015, 00:09
Ah its supposed to loop so I thought it would keep hold of the channel and then fade up the wind when outside and fade out otherwise.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 03 Jan 2015, 01:31
It appears that in AGS the AudioChannel script pointer has no invalidation if the clip stops; it keep same channel id all the time.
The Wind sound starts earlier than "Thump", and when it ends, the next "Thump" instance will be played on same channel as was used for Wind. And all the consequent changes to that channel will affect other sound instead...
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: portableTaco on 04 Jan 2015, 17:19
Hey CW...do the custom resolutions only apply to D3D and not directDraw5? When I started my empty project template it was auto defaulted to directDraw5, and upon using say, 800x600 I get no issues.  But, when I switch to 1366x768 I get an error similar to Meekah on page 5 of this thread.  If this is because it doesn't work with directDraw5, then forgive me for misunderstanding, but I will include this just because I thought more systems were compatible with directDraw5 (at least in 2010....)?

Here's the error:
---------------------------
Illegal exception
---------------------------
An exception 0xC0000005 occurred in ACWIN.EXE at EIP = 0x00473B35 ; program pointer is -3, ACI version 3.4.0.2, gtags (1,30)

AGS cannot continue, this exception was fatal. Please note down the numbers above, remember what you were doing at the time and post the details on the AGS Technical Forum.

Most versions of Windows allow you to press Ctrl+C now to copy this entire message to the clipboard for easy reporting.
An error file CrashInfo.dmp has been created. You may be asked to upload this file when reporting this problem on the AGS Forums. (code 0)
---------------------------

Thanks! =D
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 04 Jan 2015, 18:28
@portableTaco, well Mikah never answered to my questions...
As I said, unfortunately I lost some files required to read crash dumps. I'll make new ones when next version is released (very soon).

Regarding your questions:
1) Custom resolutions apply to the game, not gfx renderer. Renderers just told to draw it.
2) Depending on your system some renderer may not work, or may not support some modes. On other hand, it could try to run your game in different (scaled) size.
3) DirectDraw 5 is inferior to D3D9 and may not be properly supported on newer systems.

4) Regardless of all this, engine is not supposed to crash like that; even if some error is encountered it should give you clear message and shutdown normally.

I'll be looking in your problem in following days. I plan to upload a new version later today, when this happens please take a chance to upgrade and see if the bug is still there.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 04 Jan 2015, 19:44
AGS 3.4.0.3 (Alpha) - Click And Script

ZIP-archive:
http://www.mediafire.com/download/x1laei0i9azbm11/AGS_3.4.0.3-Alpha-ClickAndScript.zip

Debug symbols (for developers):
http://www.mediafire.com/download/xv5d2otjnl709d1/PDB_3_4_0_3.zip

This release fixes nasty bugs we had with new game building system, and adds a lot of interesting stuff to Script API.

Includes all changes from 3.3.3 release (http://www.adventuregamestudio.co.uk/forums/index.php?topic=51425.0)

What's new since 3.4.0.2:

Common features
Custom properties max limit is removed


Editor
Improvements
* Removed the lower limit of custom game resolution (was 128 pixels). Now you can create games as small as 1x1 if you desire.

Bug Fixes
* Fixed several errors in new game compiler (introduced in 3.4.0.2).
* Fixed legacy compiler option not working properly (introduced in 3.4.0.2).
* Fixed project items could sometimes get incorrectly arranged inside the folder (I hope I got this right, let Tzachs or monkey_05_06 correct me on this).


I remind you that since 3.4.0.2 there is a new game compiling system. You may enable old game compiler with a checkbox in Editor Preferences:
Spoiler: ShowHide

(http://i.imgur.com/8RYWwgb.png)

Try using this if you got any strange problems after building your game in new version of the Editor.
NOTE: this option will be removed after we become sure that everything works correct.



Script API

ProcessClick -> Room.ProcessClick
The old ProcessClick() global function is now a static function of Room class. You may need to fix your scripts if you use it, or disable "Enforce object-based scripting" option in Game Settings.

Mouse clicking simulation

Mouse.Click(MouseButton)
This function fires mouse click event at current mouse position (at mouse.x / mouse.y).
So you can do following:
Code: Adventure Game Studio
  1.     Mouse.SetPosition(100, 100);
  2.     Mouse.Click(eMouseLeft);
  3.  
This will simulate user click at (100,100).

GUI.Click(MouseButton) and Button.Click(MouseButton)
Run the OnClick event handler for the GUI or Button, if there is one.
Code: Adventure Game Studio
  1.     btnStart.OnClick(eMouseLeft); // simulate user press on a button
  2.  

GUI.ProcessClick(int x, int y, MouseButton))
Performs default processing of a mouse click at the specified co-ordinates, similar to old ProcessClick, but affects only interface (GUI and any child controls).
Code: Adventure Game Studio
  1.     GUI.ProcessClick(50, 120, eMouseRight); // simulate user click with right mouse button on GUI
  2.  


Improved Custom Dialog Options rendering

Following callbacks are now supported for custom dialog options rendering:

Code: Adventure Game Studio
  1.   // runs each tick when dialog options are on screen
  2.   void dialog_options_repexec(DialogOptionsRenderingInfo *info);
  3.   // runs when user pressed a key while dialog options are on screen
  4.   void dialog_options_key_press(DialogOptionsRenderingInfo *info, eKeyCode key);
  5.  

Additionally following items added to DialogOptionsRenderingInfo struct:
Code: Adventure Game Studio
  1.   bool RunActiveOption(); // runs the active dialog option (defined with ActiveOptionID property)
  2.   void Update(); // forces dialog options to redraw itself ("dialog_options_render" callback will be called)
  3.  

--- ATTENTION, breaking changes! ---
* You must now explicitly run active option, even if you use mouse controls.
* You must now explicitly reset active option if the mouse is not above options UI
* The "dialog_options_get_active" callback is now NOT called, at all. It is supported only for backwards compatibility when running old games.
You will need to slightly change the logic of your script. In most cases it will be enough to simply rename "dialog_options_get_active" to "dialog_options_repexec".


Following are two examples of making custom dialog options with the new script system:

1. Classic mouse controls
Spoiler: ShowHide

int dlg_opt_color = 14;
int dlg_opt_acolor = 13;
int dlg_opt_ncolor = 4;

function dialog_options_get_dimensions(DialogOptionsRenderingInfo *info)
{
    // Create a 200x200 dialog options area at (50,100)
    info.X = 50;
    info.Y = 100;
    info.Width = 200;
    info.Height = 200;
}

function dialog_options_render(DialogOptionsRenderingInfo *info)
{
    info.Surface.Clear(dlg_opt_color);
    int i = 1,  ypos = 0;
    // Render all the options that are enabled
    while (i <= info.DialogToRender.OptionCount)
    {
        if (info.DialogToRender.GetOptionState(i) == eOptionOn)
        {
            if (info.ActiveOptionID == i) info.Surface.DrawingColor = dlg_opt_acolor;
            else info.Surface.DrawingColor = dlg_opt_ncolor;
            info.Surface.DrawStringWrapped(5, ypos, info.Width - 10,
                    eFontFont0, eAlignLeft, info.DialogToRender.GetOptionText(i));
            ypos += GetTextHeight(info.DialogToRender.GetOptionText(i), eFontFont0, info.Width - 10);
        }
        i++;
    }
}

function dialog_options_repexec(DialogOptionsRenderingInfo *info)
{
    info.ActiveOptionID = 0;
    if (mouse.y < info.Y || mouse.y >= info.Y + info.Height ||
        mouse.x < info.X || mouse.x >= info.X + info.Width)
    {
        return; // return if the mouse is outside UI bounds
    }

    int i = 1, ypos = 0;
    // Find the option that corresponds to where the player clicked
    while (i <= info.DialogToRender.OptionCount)
    {
        if (info.DialogToRender.GetOptionState(i) == eOptionOn)
        {
            ypos += GetTextHeight(info.DialogToRender.GetOptionText(i), eFontFont0, info.Width - 10);
            if ((mouse.y - info.Y) < ypos)
            {
                info.ActiveOptionID = i;
                return;
            }
        }
        i++;
    }
}

function dialog_options_mouse_click(DialogOptionsRenderingInfo *info, MouseButton button)
{
    info.RunActiveOption();
}



2. Keyboard controls
Spoiler: ShowHide

int dlg_opt_color = 14;
int dlg_opt_acolor = 13;
int dlg_opt_ncolor = 4;

function dialog_options_get_dimensions(DialogOptionsRenderingInfo *info)
{
    // Create a 200x200 dialog options area at (50,100)
    info.X = 50;
    info.Y = 100;
    info.Width = 200;
    info.Height = 200;
    info.ActiveOptionID = 1; // set to first option
}

function dialog_options_render(DialogOptionsRenderingInfo *info)
{
    info.Surface.Clear(dlg_opt_color);
    int i = 1,  ypos = 0;
    // Render all the options that are enabled
    while (i <= info.DialogToRender.OptionCount)
    {
        if (info.DialogToRender.GetOptionState(i) == eOptionOn)
        {
            if (info.ActiveOptionID == i) info.Surface.DrawingColor = dlg_opt_acolor;
            else info.Surface.DrawingColor = dlg_opt_ncolor;
            info.Surface.DrawStringWrapped(5, ypos, info.Width - 10,
                    eFontFont0, eAlignLeft, info.DialogToRender.GetOptionText(i));
            ypos += GetTextHeight(info.DialogToRender.GetOptionText(i), eFontFont0, info.Width - 10);
        }
        i++;
    }
}

function dialog_options_key_press(DialogOptionsRenderingInfo *info, eKeyCode keycode)
{
    if (keycode == eKeyUpArrow && info.ActiveOptionID > 1)
        info.ActiveOptionID = info.ActiveOptionID - 1;
    if (keycode == eKeyDownArrow && info.ActiveOptionID < info.DialogToRender.OptionCount)
        info.ActiveOptionID = info.ActiveOptionID + 1;
    if (keycode == eKeyReturn || keycode == eKeySpace)
        info.RunActiveOption();
}



System.RuntimeInfo
This property returns a string, which contains runtime information, same as you were getting when pressed Ctrl+V (Ctrl+Alt+V - since AGS 3.3.3).


Engine
Bug Fixes
* Fixed crash caused by "break" or "continue" statement inside a loop if there were local variables declared inside the loop.
* Fixed rare pathfinding bug (introduced in 3.3.1.1165)


WinSetup
Improvements
* You can now make actual language name displayed instead of "Game Default" if you put following line in the "[language]" section of acsetup.cfg:
Code: Text
  1. default_translation_name = "British"
  2.  

Bug Fixes
* Fixed crash when game resolution is equal or higher than current display resolution and user clicked on "Windowed" checkbox.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: dbuske on 04 Jan 2015, 23:22
Found a bug or error in the newest alpha put out today.
GlobalScript.asc(222): Error (line 222): Undefined token 'ProcessClick'
I am using Win 7 premium 64bit
It was during starting to compile and run a game
I was not using process click
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Calin Leafshade on 04 Jan 2015, 23:23
Script API

ProcessClick -> Room.ProcessClick
The old ProcessClick() global function is now a static function of Room class. You may need to fix your scripts if you use it, or disable "Enforce object-based scripting" option in Game Settings.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: dbuske on 04 Jan 2015, 23:30
Thanks Calin, I turned off forcing object based scripting and it compiled and ran the game
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: portableTaco on 05 Jan 2015, 06:02
I'll be looking in your problem in following days. I plan to upload a new version later today, when this happens please take a chance to upgrade and see if the bug is still there.

I checked it again with the new version you released and yes, it still crashes in the same way. 
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 05 Jan 2015, 14:32
I'll be looking in your problem in following days. I plan to upload a new version later today, when this happens please take a chance to upgrade and see if the bug is still there.

I checked it again with the new version you released and yes, it still crashes in the same way. 
Can you upload a crash dump?
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: portableTaco on 06 Jan 2015, 07:15
Can you upload a crash dump?

Not a problem at all. This was the only 3.4.0.3 .dmp in my project directory, so I'm assuming this is what you're after.  Hope this helps!
http://www.mediafire.com/download/vhez371hrkmfhms/CrashInfo.3.4.0.3.dmp (http://www.mediafire.com/download/vhez371hrkmfhms/CrashInfo.3.4.0.3.dmp)
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 06 Jan 2015, 12:32
Can you upload a crash dump?

Not a problem at all. This was the only 3.4.0.3 .dmp in my project directory, so I'm assuming this is what you're after.  Hope this helps!
http://www.mediafire.com/download/vhez371hrkmfhms/CrashInfo.3.4.0.3.dmp (http://www.mediafire.com/download/vhez371hrkmfhms/CrashInfo.3.4.0.3.dmp)

Can I ask you about something else: put following line into acsetup.cfg under [misc] section:
Code: Adventure Game Studio
  1. log=1
  2.  
Then run the game. A log file "ags.log" should appear in standard Saved Games folder, in ".ags" subfolder. Can you attach it also?
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: portableTaco on 07 Jan 2015, 01:53
Can I ask you about something else: put following line into acsetup.cfg under [misc] section:
Code: Adventure Game Studio
  1. log=1
  2.  
Then run the game. A log file "ags.log" should appear in standard Saved Games folder, in ".ags" subfolder. Can you attach it also?
Here's the .log file for the crash.  It happens when I hit F5 to run in the Editor.
http://www.mediafire.com/download/wvb4jv52nb7ukb7/ags.log (http://www.mediafire.com/download/wvb4jv52nb7ukb7/ags.log)

However after seeing the log file I think I may have figured out why it's crashing.  When I run it in the editor, I'm hitting F5 to run, and the log file has the following error:
Code: [Select]
Attempting to find nearest supported resolution for screen size 1366 x 768 (32-bit) windowed
Attempt to switch gfx mode to 1366 x 736 (32-bit) windowed; game frame: 1366 x 768, frame placement: proportional
Failed. Unable to find a suitable graphics driver
Attempting to find nearest supported resolution for screen size 1366 x 768 (24-bit) windowed
Attempt to switch gfx mode to 1366 x 736 (24-bit) windowed; game frame: 1366 x 768, frame placement: proportional
Failed. Unable to find a suitable graphics driver
What was weird to me was that when I tried to run the game from the compiled .exe, it ran fine even when I had compiled with directDraw5 selected as the renderer. It turns out that if I run it in the editor as CTRL+F5 to run without the debugger, it also runs fine.  So I looked at the new log file and lo and behold, it adds this line after the two failed windowed attempts:
Code: [Select]
Attempting to find nearest supported resolution for screen size 1366 x 768 (32-bit) fullscreen
Attempt to switch gfx mode to 1366 x 768 (32-bit) fullscreen; game frame: 1366 x 768, frame placement: center
Succeeded.
Seems like it gave up on Windowed mode and attempted Fullscreen instead, which in this instance was fine for the driver so it worked.  But, for whatever reason the normal run (F5) does no such attempt to fallback on fullscreen mode, so it crashes.  All my other "successful" directDraw5 runs have all fallen back on Fullscreen mode.  However direct3D does create the Window successfully:

Code: [Select]
Attempting to find nearest supported resolution for screen size 1366 x 768 (32-bit) windowed
Attempt to switch gfx mode to 1366 x 736 (32-bit) windowed; game frame: 1366 x 768, frame placement: proportional
Succeeded. Using gfx mode 1366 x 736 (32-bit) windowed
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 07 Jan 2015, 02:17
Ok, I see what is going on now.
"Unable to find a suitable graphics driver" -- this message comes from Allegro actually. So it could not init something, probably windowed DirectDraw5.

There seem to be an incorrect logic in AGS that lets game continue to run even though gfx renderer could not initialize properly.
I will be fixing that.

And, yes, debug mode does not allow to run fullscreen, for some reasons. However, in that case it must try windowed mode with other renderer (D3D9) if possible.

EDIT: Actually DirectDraw5 seem to be not able to make 1366 x 736 window. AGS needs to find a nearest possible window size.
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Dropped Monocle Games on 07 Jan 2015, 20:52
I have bumped into a little problem using 3.4.0.3 but it could just be something I have missed or doing wrong.
I'm making a game in 1280x720

(http://i.imgur.com/Y5FqSVM.png)

But when I build the game and open Winsetup.exe it looks like this
(http://i.imgur.com/2jN5ZcS.png)
1. The native game resolution is wrong
2. I can't choose Direct3D only DirectDraw is on the driver list
3. I can't choose different Modes apart from the "Native" resolution and my Desktop Res (1080)
4. if I check Window Mode the mode sticks at 1280 x 960 but when the game is running it runs at 1280 x 720

Shouldn't the native change to 1280 x 720 and shouldn't I be able to change to loads of different resolutions?
is this down to something I have done wrong or is this an error with the editor?


Update:
Using this option gives me all the options back
(http://i.imgur.com/8RYWwgb.png)

but the resolution changes I make don't seem to save or doesn't downscaling work in fullscreen mode?
ah, I'm an idiot I had the Stretch to fit option on.
but the Mode seems to always default back to my desktop size even if I change and then save
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 07 Jan 2015, 21:33
Soxbrooker, can you make same thing as I asked PortableTaco to:
http://www.adventuregamestudio.co.uk/forums/index.php?topic=51050.msg636504588#msg636504588
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Dropped Monocle Games on 07 Jan 2015, 22:01
sure, not sure what one you wanted so I did both or if it makes a difference

here is the new build one
Log (http://www.mediafire.com/download/wiy474dyr267xmd/ags.log)
and here is the legacy compiler one
Legacy Log (http://www.mediafire.com/download/jijh18srqdpjpnc/Legacy_ags.log)
Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Knox on 11 Jan 2015, 23:03
Hi Crimson,

Unlimited Custom Properties, woohoo!! I tested this new version out today and so far so good...Thanks  :smiley:
I'm currently using Helio123's Custom Properties Helper plugin to set custom properties at runtime: http://www.adventuregamestudio.co.uk/forums/index.php?topic=42446.msg563322#msg563322 (http://www.adventuregamestudio.co.uk/forums/index.php?topic=42446.msg563322#msg563322)

Would it be in your future plans to possibly integrate that feature (setting custom property values at runtime) directly into AGS  so we no longer would need the plugin?

Title: Re: AGS 3.4.0.2 (Alpha) Multi Platform Build
Post by: Crimson Wizard on 12 Jan 2015, 09:47
Would it be in your future plans to possibly integrate that feature (setting custom property values at runtime) directly into AGS  so we no longer would need the plugin?
You may remember that it was already integrated in a test build before. We would need to copy these features here.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: abstauber on 12 Jan 2015, 10:08
I've found another alpha transparency / magic pink issue :P

It seems like CopyTransparencyMask doesn't ignore magic pink anymore (it did in 3.3)
(http://i.imgur.com/EzDWX9r.png)

The raster sprite is a 32bit png with an alpha channel, the portrait is a 32bit import from a gif. In AGS 3.3 I could happily merge those two, but in 3.4 the magic pink shines through.

Code: Adventure Game Studio
  1.   // Sprite 6 is the raster png
  2.   // Sprite 7 is the portrait gif
  3.   DynamicSprite *TileRaster = DynamicSprite.CreateFromExistingSprite(6, true);
  4.   TileRaster.Crop(0, 0, 37, 49);
  5.  
  6.   DrawingSurface *roomSurface = Room.GetDrawingSurfaceForBackground();
  7.  
  8.   DynamicSprite *temp_fg = DynamicSprite.CreateFromExistingSprite(7,true);
  9.   temp_fg.CopyTransparencyMask(TileRaster.Graphic);
  10.   roomSurface.DrawImage(10, 20, 7, 0);
  11.   roomSurface.DrawImage(50, 20, temp_fg.Graphic, 0);
  12.   roomSurface.DrawImage(100, 20, 6, 0);
  13.   roomSurface.Release();
  14.  
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 12 Jan 2015, 10:57
Can you please attach the pictures you are importing?
Also a screenshot of how it is supposed to look normally.
Also, what is the "sprite alpha rendering style" setting is?
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: abstauber on 12 Jan 2015, 12:12
PM sent :)

In the meantime I've discovered another issue: When you select "run game setup..." the new acsetup.cfg is only updated in the .\windows folder. But the editor still uses acsetup.cfg in the root folder, so I have to copy the file back myself.


edit:
This is a screenshot from AGS 3.3 - same images, code and settings:
(http://i.imgur.com/z7GgoNB.png)

The alpha rendering is set to "proper alpha blending"
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 12 Jan 2015, 17:30
This is actually the issue of combining "magic pink" with alpha channel.
Code: Adventure Game Studio
  1. DynamicSprite *temp_fg = DynamicSprite.CreateFromExistingSprite(7,true);
  2.  
Here you import an image without alpha but with "magic pink" into new image with alpha. When you do this, "magic pink" should no longer be considered "magic" and becomes plain magenta.
I would rather wonder why it worked in older AGS. This is something I am very curious about and going to investigate.

There are couple of ideas how to fix this; I am leaning towards replacing magic pink with zero alpha color, like (0;0;0;0) or (255;255;255;0) when you create new sprite with alpha channel from existing sprite without one.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Knox on 13 Jan 2015, 01:24
Would it be in your future plans to possibly integrate that feature (setting custom property values at runtime) directly into AGS  so we no longer would need the plugin?
You may remember that it was already integrated in a test build before. We would need to copy these features here.
Yes, I was hoping that it could be added to this version! :grin:
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: abstauber on 13 Jan 2015, 07:54
I am leaning towards replacing magic pink with zero alpha color, like (0;0;0;0) or (255;255;255;0) when you create new sprite with alpha channel from existing sprite without one.
That would be great. To be honest I thought this would already happen during import and 32bit conversion. Otherwise I wonder how AGS can e.g. draw half-transparent gifs on surfaces.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 13 Jan 2015, 08:22
I am leaning towards replacing magic pink with zero alpha color, like (0;0;0;0) or (255;255;255;0) when you create new sprite with alpha channel from existing sprite without one.
That would be great. To be honest I thought this would already happen during import and 32bit conversion.
This can't happen during import, if you are importing 32-bit image without alpha channel, because you will loose transparency this way.
Again, I am talking about image without alpha channel, the one that must use magic pink to draw transparent areas.

E: Regarding why this works in previous versions of AGS. I appears that Allegro drawing functions take a note of magic pink even if I am using my own alpha-blending callback (which is very unexpected, from my opinion...). It seems that if the result of alpha-blending is exactly magic pink (a magenta color with 0 alpha), it skips it, while any other color, even with zero alpha, gets to the destination surface.
The difference in newer version is that it produces "correct" blending results by setting 255 alpha on final destination, unlike previous version which was setting 0 alpha, "unintentionally" producing magic pink along the way. :sealed:

E2: actually I told a wrong thing before. This line does not create image with alpha channel:
Code: Adventure Game Studio
  1. DynamicSprite *temp_fg = DynamicSprite.CreateFromExistingSprite(7,true);
  2.  
The "true" only means "keep alpha if there is one", while the original does not have alpha channel, so nothing is kept and the new sprite is w/o alpha as well.
What adds alpha channel is this:
Code: Adventure Game Studio
  1. temp_fg.CopyTransparencyMask(TileRaster.Graphic);
  2.  
because it merges other sprite's alpha channel with the sprite w/o one.


E3: This whole thing in AGS is so inconsistent! :angry: I sometimes think it generally works simply by luck, because some functions ignore the incorrect results of other functions.
For instance, CopyTransparencyMask ignores magic pink on dest image and converts it to actual color.
I think it is a bug... What do you think? What should logically happen if I apply an opaque mask pixel over transparent (magic pink) pixel?
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: StillInThe90s on 13 Jan 2015, 13:10
Lots of lovely new features. Good work, people!
I was wondering if the issue with characters scaling in the wrong resolution when using d3d, has been addressed in 3.4.0.3?
It was last discussed (as far as I can tell) in the 3.3.0 Beta thread, HERE (http://www.adventuregamestudio.co.uk/forums/index.php?topic=47966.msg636474834#msg636474834) and HERE (http://www.adventuregamestudio.co.uk/forums/index.php?topic=47966.msg636473056#msg636473056) although people seemed to be confusing several different issues.
The draconian build fixed this but that was 3.2x.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: abstauber on 13 Jan 2015, 13:40
Yeah, I know - all these alpha blending and magic pink issues must be highly annoying. If this is a too annoying thing to fix, I simply look for a different way to raster out graphics. So there's no need to be worn out by this.

Quote
I think it is a bug... What do you think? What should logically happen if I apply an opaque mask pixel over transparent (magic pink) pixel?
If the transparent pixel is the master sprite to which the mask is applied I expect that the transparent pixels win and the area will stay completely transparent.
To my logic </Spock>, magic pink pixels are pixel that should be completely ignored and they should never ever appear ingame.

Otherwise it is never possible to create this raster effect - no matter what other combinations I try - magic pink always appears. Even if my raster images doesn't have an alpha channel and utilizes pink as well.

But as said before, I highly appreciate all the work you put into 3.4.x. If this won't be "fixed" I can happily accept it.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: ddq on 18 Jan 2015, 18:42
Running into a bit of an annoying bug with 3.4.0.2 and 3.4.0.3. When I run the game with F5 or Ctrl-F5, it doesn't respect the settings in winsetup, always showing it at max fit. Doesn't follow scaling multiplier, interpolation type, anything. Works in 3.3.2. Other people I've talked to have not been able to replicate. Running Win7.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 18 Jan 2015, 18:50
Running into a bit of an annoying bug with 3.4.0.2 and 3.4.0.3. When I run the game with F5 or Ctrl-F5, it doesn't respect the settings in winsetup, always showing it at max fit. Doesn't follow scaling multiplier, interpolation type, anything. Works in 3.3.2. Other people I've talked to have not been able to replicate. Running Win7.
There is an error that makes it read display settings from incorrect directory. Probably this is it.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: monkey0506 on 18 Jan 2015, 22:39
I noticed elsewhere that someone had commented about this issue, and I meant to ask about it.

I've made a separate thread for it (http://www.adventuregamestudio.co.uk/forums/index.php?topic=51603.new#new).
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: AGD2 on 22 Jan 2015, 19:58
Just got around to importing the mammoth source code for Mage's Initiation into 3.4.0.3 to see how it would go. The new features are awesome - thanks a lot to everyone who's contributed to this excellent new Alpha!

That said, I wanted to mention a few things I've ran into so far:

1) Small issue. I have this line in a script header:

import void UnhandledEvent(CursorMode, LocationType, InventoryItem*=0);

Which compiles in 3.3.3, but gives a compile error in 3.4.0.3. Adding a space after the * makes it compile again.

2) Bigger issue. I keep getting "symbol table overflow" compile errors. I actually started running into this problem in 3.3.3 about a month back, but I deleted a bunch of Views, Dialogs, enums etc. and I was able to compile again and continue. My source code currently compiles just fine in 3.3.3. However, if I copy the exact same source over to 3.4.0.3, it spits out the following:

Quote
__DialogScripts.asc(20): Error (line 20): symbol table overflow - too many symbols defined

There was also another issue relating to DynamicSprites, but I can't currently compile the game in 3.4.0.3 to investigate what's happening and report it. So, I'll post that one at a later time.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Gurok on 23 Jan 2015, 11:22
The *= thing was introduced by the patch to support the remaining assignment operators ( /= &= |= *= etc ). I've made a small pull request to ensure that the compiler parses * and = separately in this context.

For the bigger issue, I'd really like to get your code. I know that it's pretty sensitive and that might not be a possibility. I can make the symbol table use vectors, but there are complications that go along with that. I also can't guarantee it's actually a symbol table overflow -- it might be some underlying parsing issue. Are you able to verify that the source compiles if you delete a few more views, dialogs and enums?
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: AGD2 on 25 Jan 2015, 13:20
Ah, thanks for the clarification, Gurok.

Regarding the bigger issue, check your PMs. (And yes, I've confirmed that the source compiles if I delete dialogs, views, and enums. I just deleted a bunch of dialogs in the 3.4.0.3-compiled game source code, which pushed it back under the limit and made it start compiling again.)
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Rhye on 29 Jan 2015, 11:15
Could anyone please check if the icons are properly working with this AGS version? Actually setup.ico is working just fine, but USER.ico isn't. (it displays the default blue cup icon)
What I have tried:

*setup.ico=USER.ico

360mb exe on AGS 3.4.0.3 + setup.ico + USER.ico = Only setup.ico is shown.
5mb exe on AGS 3.4.0.3 + setup.ico + USER.ico = Only setup.ico is shown.
360 and 5mb exe on AGS 3.3.2 + setup.ico + USER.ico = Both icons are shown.

And I tried doing this with different images, sizes, converters and projects.

---

Second problem: splitting exe into resource packs always generates 2 files with constant sizes, ignoring my input.
Some real examples on AGS 3.4.0.3:
*.exe size without splitting: 360mb
Input: 10mb - .exe=9mb - .001=355mb - .002=4mb
Input: 50mb - .exe=9mb - .001=355mb - .002=4mb
Input: 200mb - .exe=9mb - .001=355mb - .002=4mb

And the same problem occurs with another projects:
*exe size without splitting: 132mb
Input X-mb - always: .exe=2.5mb - .001=130mb - 002=22kb

And using AGS 3.3.2, the same.

*I'm using Windows 7.

??? ??? ???
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: monkey0506 on 29 Jan 2015, 12:15
I can look into the icons, but regarding the split resource files, certain things have always been packed into the first file, such as the sprite file, which generally speaking makes up the bulk of your non-audio files. Additionally, the way the asset manager works, single files cannot be split across multiple resource files, which will also limit your minimum file size.

It might be possible to look into external compression libraries that allow split files, but that would be no small amount of work to include a relatively small feature. I would not expect this any time soon.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 29 Jan 2015, 12:58
It might be possible to look into external compression libraries that allow split files, but that would be no small amount of work to include a relatively small feature. I would not expect this any time soon.
Personally, I can't find any reasoning why there is a need of custom package, when AGS could simply use ZIP files for this. If we will ever want to improve the system, I'd suggest to consider using zip archives first.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: monkey0506 on 29 Jan 2015, 13:48
Does the ZIP format allow encryption? I know most game devs wouldn't want their resource files readily readable and/or replaceable like that. It's possible to extract the resources anyway, but at least it takes some work to do it.



UPDATE on broken USER.ico

I have been tracing this back in the code and all of the paths passed on from BuildTargetWindows to the NativeProxy are correct. The problem is that the native code is not returning an error message, which is to say that even with full, absolute paths (which I have tested as a possible fix), UpdateResource (https://msdn.microsoft.com/en-us/library/windows/desktop/ms648049%28v=vs.85%29.aspx) is returning true, indicating success.

For what it's worth, the code in BuildTargetWindows.UpdateWindowsEXE has not changed, nor has the native ReplaceIconFromFile function. This will require further investigation to determine why the main EXE is failing to have its icon updated.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: selmiak on 29 Jan 2015, 14:06
Does the ZIP format allow encryption? I know most game devs wouldn't want their resource files readily readable and/or replaceable like that. It's possible to extract the resources anyway, but at least it takes some work to do it.

For an easy start AGS could change the file extension of every open file to something like .ARF (AGS Resource File, not RUFF RUFF!) and strap off the file header. Then later add the header on runtime and treat the file as the file it is. Guessing the correct file extension takes some work already (well, then, videos are bigger than pictures, which are bigger than highscoretables in plain text, but you know what I mean.)
I bet this is easier to implement than file encryption. But encrypted files with the key hard coded into the game .exe are a bit harder to crack, but since you can extract resources from the exe already, this also not unbreakable I think. But at least a lot of work and more rewarding for the person that really wants that element of the game and is too lazy to write an email to the gamedev (or hack the gamedev and demand that resource with the compromizing data gained...)

btw, what files are openely added to the gamefolder and not already stuffed into these ressource containers and the game .exe?
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 29 Jan 2015, 15:17
For an easy start AGS could change the file extension of every open file to something like .ARF (AGS Resource File, not RUFF RUFF!) and strap off the file header. Then later add the header on runtime and treat the file as the file it is. Guessing the correct file extension takes some work already (well, then, videos are bigger than pictures, which are bigger than highscoretables in plain text, but you know what I mean.)
I bet this is easier to implement than file encryption. But encrypted files with the key hard coded into the game .exe are a bit harder to crack, but since you can extract resources from the exe already, this also not unbreakable I think.

Yes, yes, and lets also add 123 to every byte.

All those attempts to encrypt the game are silly and worthless. Someone will copy/paste decoding part from the open sourced engine and make a program that just runs decoding on game file and writes files to disk, and all "encryption" may be thrown to the trash bin.
We will spend much more time writing this system than the "hacker" will spend "cracking" it.

The only serious way to secure the data is when game creators modify the engine with their individual encryption, and then hide the modified source code.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Alberth on 29 Jan 2015, 16:54
Quote
The only serious way to secure the data is when game creators modify the engine with their individual encryption, and then hide the modified source code.
And even that is dubious. At the end of the day, a foreign computer has to be able to use the program and its resources, which means that at some point after delivering all data to the foreign computer, it must have all assets to decode and use what it needs.
Finding the spot may be a little tricky, but it's mostly a matter of finding the spot just after decoding, stop the program at that point (ie a standard debugger at machine instruction level can do that), and write an amount of data from memory to disk.

In other words, if you want your data to be really safe, either don't give the data away (eg an online web service where you can play but not download), or give the data without a way to decrypt it (but that is of course totally useless for using the data).
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: cat on 30 Jan 2015, 11:34
I didn't find it here, but with managed structs and arrays and stuff that was added to this version, is it now possible to pass structs as function parameters? I think this was not possible in earlier versions.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 30 Jan 2015, 12:43
I didn't find it here, but with managed structs and arrays and stuff that was added to this version, is it now possible to pass structs as function parameters? I think this was not possible in earlier versions.
Yes, you may pass user managed structs by pointer, similarily to how you pass any build-in pointer type, like Character*, InventoryItem* etc.

Actually, there is a script sample in the first post, although it displays returning struct from a function:
Code: Adventure Game Studio
  1. managed struct Point
  2. {
  3.     int X;
  4.     int Y;
  5. };
  6.  
  7. Point *GetPosition()
  8. {
  9.     Point *result;
  10.  
  11.     result = new Point;
  12.     result.X = 30;
  13.     result.Y = 40;
  14.  
  15.     return result;
  16. }
  17.  

Yet you may easily use same pointer as an argument to function:
Code: Adventure Game Studio
  1. void SetPosition(Point *at);
  2.  
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: monkey0506 on 30 Jan 2015, 16:20
You can also make use of the hidden autoptr and attribute keywords, because they're awesome:

Code: Adventure Game Studio
  1. // Script.ash
  2. autoptr managed struct Point
  3. {
  4.     protected int x;
  5.     protected int y;
  6.     import attribute int X;
  7.     import attribute int Y;
  8.     import Point Copy();
  9.     import void SetLocation(int x, int y);
  10.     import void SetLocationFromPoint(Point);
  11.     import static Point Create(int x, int y);
  12.     import static Point CreateFromPoint(Point);
  13. };
  14.  
  15. // Script.asc
  16. int get_X(this Point*)
  17. {
  18.     return this.x;
  19. }
  20.  
  21. void set_X(this Point*, int value)
  22. {
  23.     if (value < 0) AbortGame("X value cannot be negative!");
  24.     this.x = value;
  25. }
  26.  
  27. int get_Y(this Point*)
  28. {
  29.     return this.y;
  30. }
  31.  
  32. void set_Y(this Point*, int value)
  33. {
  34.     if (this.y < 0) AbortGame("Y value cannot be negative!");
  35.     this.y = value;
  36. }
  37.  
  38. void Point::SetLocation(int x, int y)
  39. {
  40.     this.set_X(x); // can't call attributes directly from same script where accessors are defined
  41.     this.set_Y(y);
  42. }
  43.  
  44. void Point::SetLocationFromPoint(Point p)
  45. {
  46.     this.SetLocation(p.get_X(), p.get_Y()); // can't call attributes directly from same script where accessors are defined
  47. }
  48.  
  49. static Point Point::Create(int x, int y)
  50. {
  51.     Point p = new Point;
  52.     p.SetLocation(x, y);
  53.     return p;
  54. }
  55.  
  56. static Point Point::CreateFromPoint(Point p)
  57. {
  58.     return Point.Create(p.get_X(), p.get_Y()); // can't call attributes directly from same script where accessors are defined
  59. }
  60.  
  61. Point Point::Copy()
  62. {
  63.     return Point.Create(this.x, this.y);
  64. }
  65.  
  66. // SomeScript.asc
  67. Point p = Point.Create(30, 40);
  68. Point p2 = p.Copy();
  69. p2.X += 2;
  70. p2.Y -= 2; // and so-forth
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: cat on 30 Jan 2015, 16:27
Thanks guys!

I saw the sample in the first post, but I didn't know if only returning a struct was possible or also passing one as parameter.

I think this feature is enough reason for me to try the Alpha.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: proximity on 30 Jan 2015, 23:26
I don't know C++ language very well. I see most of C++ commands integrated to AGS script language. Am i right ?
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 31 Jan 2015, 01:07
I don't know C++ language very well. I see most of C++ commands integrated to AGS script language. Am i right ?
You mean operators? Yes, pretty much of them.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: proximity on 31 Jan 2015, 09:34
I don't know C++ language very well. I see most of C++ commands integrated to AGS script language. Am i right ?
You mean operators? Yes, pretty much of them.

Yes, i meant operators :)
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: morganw on 01 Feb 2015, 19:55
When testing, AudioChannel.SetSpeed doesn't seem to work for an AudioChannel that is playing a WAV file. Is this expected?
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 01 Feb 2015, 20:28
When testing, AudioChannel.SetSpeed doesn't seem to work for an AudioChannel that is playing a WAV file. Is this expected?
You made replies in the thread earlier today: http://www.adventuregamestudio.co.uk/forums/index.php?topic=51666.msg636506436#msg636506436, where you stated that it works for you under some circumstances. Here you simply tell that it does not seem to work.
This confuses me. Can you please elaborate?

Also, does it work same way in previous versions of AGS (3.2.1, 3.3.3), or just stopped working in 3.4.0?

I am going to look into this too when I get time.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: morganw on 01 Feb 2015, 21:35
My other thread was reading AudioChannel.Position and calling AudioChannel.Seek, both issued resolved by using a WAV file of a smaller length (I guess there is some implementation restriction as all I did was clip a short section from the original audio, no change in bit depth or sample rate). Using the smaller WAV file, I can't alter the playback speed.

I'm testing with:
Code: Adventure Game Studio
  1. function on_key_press(eKeyCode keycode)
  2. {
  3.         //music is a global *AudioChannel
  4.         if (keycode == eKeyV)
  5.                 music.Speed = music.Speed - 50;
  6.         if (keycode == eKeyB)
  7.                 music.Speed = music.Speed + 50;
  8. }
...no problems with an OGG file.

AudioChannel.Speed.
The new property used to get or set audio clip's playback speed. The value is defined in clip's milliseconds per second; 1000 is default, meaning 1000 of clip's ms in 1 real second (scale 1:1). Set < 1000 for slower play and > 1000 for faster play.
NOTE: the engine will also map "AudioChannel.SetSpeed" function to this property, therefore you can run Gord10's "Self" game using new interpreter (e.g. on Linux).

This feature is brand new in 3.4 according to the first post.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 01 Feb 2015, 21:39
Oops, I am sorry, I completely misread your question here.

No, it does not work for WAV at the moment. I will fix the description for now.
I will check if that could be implemented for WAV and MOD files a bit later.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Rhye on 03 Feb 2015, 11:24
UPDATE on broken USER.ico

I have been tracing this back in the code and all of the paths passed on from BuildTargetWindows to the NativeProxy are correct. The problem is that the native code is not returning an error message, which is to say that even with full, absolute paths (which I have tested as a possible fix), UpdateResource (https://msdn.microsoft.com/en-us/library/windows/desktop/ms648049%28v=vs.85%29.aspx) is returning true, indicating success.

For what it's worth, the code in BuildTargetWindows.UpdateWindowsEXE has not changed, nor has the native ReplaceIconFromFile function. This will require further investigation to determine why the main EXE is failing to have its icon updated.
Thank you for the explanation, monkey_05_06.
I'll be waiting for a fix, then. :)
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Dualnames on 03 Feb 2015, 12:38
Alright, switched to 3.4.0.3 to test the way ags fits the games on fullscreen, and now the issue i reported with the mouse behaving erratically occurs here, when on 3.3.2 it didn't with my mouse, just logitech mice. The game is running at 320x200 and i set fit on screen to checked, and the issue appears.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 03 Feb 2015, 13:31
Alright, switched to 3.4.0.3 to test the way ags fits the games on fullscreen, and now the issue i reported with the mouse behaving erratically occurs here, when on 3.3.2 it didn't with my mouse, just logitech mice. The game is running at 320x200 and i set fit on screen to checked, and the issue appears.
Is the final resolution is different from what you used in 3.3.2? What are your filter settings?
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Dualnames on 03 Feb 2015, 13:53
I've switched to both Game Resolution (320x200) and Desktop Resolution(1600x900) and the filter setting are nearest-neighbour, scaling is none. Also I'm wondering is there any way to force 16:9 resolution without black borders?
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 03 Feb 2015, 14:13
Also I'm wondering is there any way to force 16:9 resolution without black borders?
Set "Stretch to fit to screen" option ON and "Keep aspect ratio" OFF.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: AGD2 on 03 Feb 2015, 20:00
I've ran into a few issues with the new graphics filters. My system uses an nVidia GeForce GTX 295. This video card allows the user to create custom resolutions, so I've added 320x200@32-bit, 320x240@32-bit, 640x400@32-bit, and 640x480@32-bit. I have tested 320x200 low-res AGS games and confirmed that they run at 320x200 full-screen mode in pre-3.4.0.3 versions. I've also tested full-screen 640x400 AGS games and confirmed that they worked, too, in pre-3.4.0.3 versions.

AGS 3.4.0.3: Trying to run a 640x400 game at Full-screen in its native mode or at 640x480:

Direct3d 9> Full-screen> Mode: (Game res) 640x400> Filter: Nearest-neighbour> Scaling: None> Stretch to fit screen (window)> Keep aspect ratio.

Pressing CTRL+V in-game indicates that the "Game Resolution" is 640 x 400, but that it's "Running" 720 x 576 @ 32-bit, with a "Draw Frame" size of 720 x 450. I can never get the "Running" Resolution or the Draw Frame to be 640x400 or 640x480 to match the "Game Resolution". The game window has black borders around all 4 edges. This causes everything on the screen to scale imperfectly and results in really jagged, unsightly scaling artifacts on the character portraits and TTF font texts.

If I substitute the "Direct 3D 9" for the "DirectDraw 5" driver, I get the same result. 
If I substitute the "Scaling" setting for any of the other scaling options, I get the same result. 
If I substitute 640x400 for 640x480, I get the same result.

This didn't occur in 3.3.3 because there were separate checkboxes in winsetup to add black borders to the top/bottom, and to the sides. In 3.3.3, I can get the same game to run at full-screen in 640x480 resolution with no filters, perfectly (with black borders up the top/bottom and stretched 640 pixels across to the screen edges).

No combination of options seems to accomplish this in 3.4.0.3.


AGS 3.4.0.3: Trying to run a 640x400 game at Full-screen in 320 x 240 mode or with the 1/2 filter:

Direct3d 9> Full-screen> Mode: 320x240> Filter: Nearest-neighbour> Scaling: None> Stretch to fit screen (window)> Keep aspect ratio.

The game runs at 640x480 in a 720 x 450 Draw Frame, even if I change the various options as mentioned earlier. However, if I uncheck the "Stretch to fit screen (window)" box, then the game runs full-screen in a small, centered 320x200 window with black borders around the outside edges. It seems that no amount of tinkering with the options will get the game to display at full-screen 320x240 mode. Yet my video card can display this resolution perfectly for pre-3.4.0.3 games and retro 320x200 games ran through DosBox.

Changing "Mode" to 640x400,  "Scaling" to the 1/2 filter, and unchecking "Stretch to fit screen (window)" gives similar results, but says the "Game Resolution" is 640 x 400, "Running" 720 x 576 @ 32-bit, with a "Draw Frame" size of 320 x 200. The game runs full-screen in a centered 640x400 window with black borders around all 4 sides. But the Text and graphics are blurred and pixelated as if the 320 x 200 screen had been blown-up to 640x400 and then had the linear interpolation filter applied (which I didn't choose in the settings).

Other Issues

1) On a related note, if I use ALT+X to abort the game, and then press ENTER, ESC, or SPACE to dismiss the "Abort Key Pressed" dialog (as opposed to mouse-clicking the OK button), most of the time the game leaves a residual blank box on the task bar. If you click on this residual taskbar box, it automatically disappears.

2) A lot of the time, settings seem to be forgotten when you close and re-open winsetup (seemingly if one of your selected options, like the resolution, didn't work and a substitute had to be used). This means that if you again run and play the game via winsetup, you'll get different resolution settings and in-game results than the ones you had used before.

3) Alt-Tabbing away from the full-screen game window can leave the screen black (I noticed this when using the 320x240 and 1/2 filter settings). It seems like there's a black full-screen-sized overlay blocking everything, and this overlay isn't disappearing or get minimized. Subsequent Alt+Tabbing appears to change the active program, but you can't see the pop-up box because the black overlay persists. Actually, you can't do anything in Windows because you can't see the desktop and only CTRL+ALT+DELETE will make the black screen disappear when you get the option to bring up the Task Manager (Using Win 7).
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 03 Feb 2015, 20:56
I've ran into a few issues with the new graphics filters. My system uses an nVidia GeForce GTX 295. This video card allows the user to create custom resolutions, so I've added 320x200@32-bit, 320x240@32-bit, 640x400@32-bit, and 640x480@32-bit. I have tested 320x200 low-res AGS games and confirmed that they run at 320x200 full-screen mode in pre-3.4.0.3 versions. I've also tested full-screen 640x400 AGS games and confirmed that they worked, too, in pre-3.4.0.3 versions.
When you say "pre-3.4.0.3 versions", do you mean not only 3.3.*, but also previous 3.4.0.* versions?

Can you save logs for each of your test cases, like explained here (http://www.adventuregamestudio.co.uk/forums/index.php?topic=51633.msg636506211#msg636506211)? Logs will help to understand why it choses particular resolutions.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: AGD2 on 03 Feb 2015, 21:03
Right. For example, if I run the same game in 3.3.3 OR if I run an older AGS game, like our Quest for Glory 2 remake (AGS 2.72), I can get them working in 640x480 and 320x240 modes, respectively.

Sure, I'll check into the log creation process and try to get some tomorrow.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: AGD2 on 03 Feb 2015, 21:20
Okay, I just quickly did it now for 3 of the resolutions I mentioned above:

1) What version of AGS are you using;  3.4.0.3
2) What is your game resolution (in General Settings); 640 x 400
3) What settings do you set in setup; See Below
4) What is your desktop resolution. 1280 x 1024

(I pressed ALT+X to abort the game in all three cases below)

First Log: Direct3d 9> Full-screen> Mode: (Game res) 640x400> Filter: Nearest-neighbour> Scaling: None> Stretch to fit screen (window)> Keep aspect ratio.

Spoiler: ShowHide

Adventure Game Studio v3.4 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2015 others
ACI version 3.4.0.3

*** ENGINE STARTUP ***
Installing exception handler
Reading config file
Initializing allegro
Setting up window
Initializing game data
Game data file: c:/AGS_BE~1/AGS_3_~1/MAGES_~1/Compiled/Windows/MAGES_~1.EXE

Initializing TTF renderer
Initializing mouse
Checking memory
Initializing audio vox
Initializing keyboard
Install timer
Initialize sound drivers
Install exit handler
Initialize path finder library
Load game data
Game data version: 46
Requested engine version: 3.4.0.3
Game GUI version: 118
Mage's Initiation
Checking for disk space
Initializing MOD/XM player
Initializing resolution settings
Device display resolution: 1280 x 1024
Game native resolution: 640 x 400 (32 bit)
Game settings: windowed = no, screen def: explicit, screen size: 640 x 400, match device ratio: yes, frame placement: proportional
Init gfx driver
Built library path: d3d9.dll
Created graphics driver: Direct3D 9
Supported gfx modes (32-bit):
   640x480;640x480;640x480;720x480;720x480;720x480;720x480;720x576;
   720x576;720x576;720x576;800x600;800x600;800x600;800x600;1024x768;
   1024x768;1024x768;1152x864;1280x720;1280x768;1280x800;1280x960;1280x1024;
   1280x1024;1920x1080;320x240;320x200;
Supported gfx modes (24-bit): none
Requested gfx filter: StdScale, filter scaling: 1 x 1
Applying scaling filter: StdScale
Switching to graphics mode
Attempting to find nearest supported resolution for screen size 640 x 400 (32-bit) fullscreen
Attempt to switch gfx mode to 720 x 576 (32-bit) fullscreen; game frame: 640 x 400, frame placement: proportional
Succeeded. Using gfx mode 720 x 576 (32-bit) fullscreen
   filter dest (0, 63, 719, 512 : 720 x 450), render dest (0, 63, 719, 512 : 720 x 450)
Preparing graphics mode screen
Initializing colour conversion
Check for preload image
Initialize sprites
Set up screen
Initialize game settings
Cannot open translation: default.tra
Prepare to start game
Audio is processed on the main thread
Checking replay status
Engine initialization complete
Starting game
Loading room 300
WARNING: Not all of the Direct3D resources have been disposed; ID3D ref count: 1
***** ENGINE HAS SHUTDOWN



Second Log: Direct3d 9> Full-screen> Mode: 320x240> Filter: Nearest-neighbour> Scaling: None> Stretch to fit screen (window)> Keep aspect ratio.

Spoiler: ShowHide
Adventure Game Studio v3.4 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2015 others
ACI version 3.4.0.3

*** ENGINE STARTUP ***
Installing exception handler
Reading config file
Initializing allegro
Setting up window
Initializing game data
Game data file: c:/AGS_BE~1/AGS_3_~1/MAGES_~1/Compiled/Windows/MAGES_~1.EXE

Initializing TTF renderer
Initializing mouse
Checking memory
Initializing audio vox
Initializing keyboard
Install timer
Initialize sound drivers
Install exit handler
Initialize path finder library
Load game data
Game data version: 46
Requested engine version: 3.4.0.3
Game GUI version: 118
Mage's Initiation
Checking for disk space
Initializing MOD/XM player
Initializing resolution settings
Device display resolution: 1280 x 1024
Game native resolution: 640 x 400 (32 bit)
Game settings: windowed = no, screen def: explicit, screen size: 320 x 240, match device ratio: yes, frame placement: proportional
Init gfx driver
Built library path: d3d9.dll
Created graphics driver: Direct3D 9
Supported gfx modes (32-bit):
   640x480;640x480;640x480;720x480;720x480;720x480;720x480;720x576;
   720x576;720x576;720x576;800x600;800x600;800x600;800x600;1024x768;
   1024x768;1024x768;1152x864;1280x720;1280x768;1280x800;1280x960;1280x1024;
   1280x1024;1920x1080;320x240;320x200;
Supported gfx modes (24-bit): none
Requested gfx filter: StdScale, filter scaling: 1 x 1
Applying scaling filter: StdScale
Switching to graphics mode
Attempting to find nearest supported resolution for screen size 320 x 240 (32-bit) fullscreen
Attempt to switch gfx mode to 720 x 576 (32-bit) fullscreen; game frame: 640 x 400, frame placement: proportional
Succeeded. Using gfx mode 720 x 576 (32-bit) fullscreen
   filter dest (0, 63, 719, 512 : 720 x 450), render dest (0, 63, 719, 512 : 720 x 450)
Preparing graphics mode screen
Initializing colour conversion
Check for preload image
Initialize sprites
Set up screen
Initialize game settings
Cannot open translation: default.tra
Prepare to start game
Audio is processed on the main thread
Checking replay status
Engine initialization complete
Starting game
Loading room 300
WARNING: Not all of the Direct3D resources have been disposed; ID3D ref count: 1
***** ENGINE HAS SHUTDOWN



Third Log: Direct3d 9> Full-screen> Mode: 640x400> Filter: Nearest-neighbour> Scaling: 1/2> Keep aspect ratio.

Spoiler: ShowHide
Adventure Game Studio v3.4 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2015 others
ACI version 3.4.0.3

*** ENGINE STARTUP ***
Installing exception handler
Reading config file
Initializing allegro
Setting up window
Initializing game data
Game data file: c:/AGS_BE~1/AGS_3_~1/MAGES_~1/Compiled/Windows/MAGES_~1.EXE

Initializing TTF renderer
Initializing mouse
Checking memory
Initializing audio vox
Initializing keyboard
Install timer
Initialize sound drivers
Install exit handler
Initialize path finder library
Load game data
Game data version: 46
Requested engine version: 3.4.0.3
Game GUI version: 118
Mage's Initiation
Checking for disk space
Initializing MOD/XM player
Initializing resolution settings
Device display resolution: 1280 x 1024
Game native resolution: 640 x 400 (32 bit)
Game settings: windowed = no, screen def: explicit, screen size: 640 x 400, match device ratio: yes, frame placement: center
Init gfx driver
Built library path: d3d9.dll
Created graphics driver: Direct3D 9
Supported gfx modes (32-bit):
   640x480;640x480;640x480;720x480;720x480;720x480;720x480;720x576;
   720x576;720x576;720x576;800x600;800x600;800x600;800x600;1024x768;
   1024x768;1024x768;1152x864;1280x720;1280x768;1280x800;1280x960;1280x1024;
   1280x1024;1920x1080;320x240;320x200;
Supported gfx modes (24-bit): none
Requested gfx filter: StdScale, filter scaling: -2 x -2
Applying scaling filter: StdScale
Switching to graphics mode
Attempting to find nearest supported resolution for screen size 640 x 400 (32-bit) fullscreen
Attempt to switch gfx mode to 720 x 576 (32-bit) fullscreen; game frame: 320 x 200, frame placement: center
Succeeded. Using gfx mode 720 x 576 (32-bit) fullscreen
   filter dest (200, 188, 519, 387 : 320 x 200), render dest (200, 188, 519, 387 : 320 x 200)
Preparing graphics mode screen
Initializing colour conversion
Check for preload image
Initialize sprites
Set up screen
Initialize game settings
Cannot open translation: default.tra
Prepare to start game
Audio is processed on the main thread
Checking replay status
Engine initialization complete
Starting game
Loading room 300
WARNING: Not all of the Direct3D resources have been disposed; ID3D ref count: 1
***** ENGINE HAS SHUTDOWN


Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Ronsen on 04 Feb 2015, 08:42
I know it's still alpha but wants to let you know.
This is what I get from the Linux export. Version mismatch...
Quote
AGS: Adventure Game Studio v3.4 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2014 others
ACI version 3.4.0.2

AGS: *** ENGINE STARTUP ***
AGS: Reading config file
AGS: Initializing allegro
AGS: Setting up window
AGS: Initializing game data
AGS: Game data file: ***removed***.ags

AGS: Initializing TTF renderer
AGS: Initializing mouse
AGS: Checking memory
ci_find_file: cannot change to directory: Compiled
AGS: Initializing audio vox
Audio vox found and initialized.
AGS: Initializing keyboard
AGS: Install timer
Checking sound inits.
AGS: Initialize sound drivers
ALSA lib rawmidi_hw.c:233:(snd_rawmidi_hw_open) open /dev/snd/midiC0D0 failed: Datei oder Verzeichnis nicht gefunden
AGS: Install exit handler
AGS: Initialize path finder library
AGS: Load game data
AGS: Game data version: 46
AGS: Requested engine version: 3.4.0.3
This game requires a newer version of AGS (3.4.0.3). It may not run correctly.AGS: Game GUI version: 118
terminate called after throwing an instance of 'std::bad_alloc'
  what():  std::bad_alloc
Shutting down Allegro due to signal #6
Aborted (core dumped)
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 04 Feb 2015, 09:11
I know it's still alpha but wants to let you know.
This is what I get from the Linux export. Version mismatch...
Yes, it appears I have mistakenly put outdated linux binaries in this package.
You may try build linux binaries yourself from the source code (see link at the first post).
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: cat on 12 Feb 2015, 20:38
I tried the 3.4.0.3 build, but I can't get my project (which works fine in 3.3.3) to compile. Several modules seem to have problems, when I remove one, another one has issues.

Logger.asc(2): Error (line 2): Size of identifier does not match prototype

However, in line 2 there is only
Code: Adventure Game Studio
  1. // module interface
  2. sLogger Logger;
  3. export Logger;

Has there something changed in the scripting language that I have to adapt in the modules?
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Gurok on 12 Feb 2015, 21:10
Okay, with the rest of the module, I've been able to replicate this. Looking into it :|

Edit: I have a pull request to fix this now.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: cat on 16 Feb 2015, 17:29
Just saw your edit here, thanks Gurok for investigating and fixing the issue.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: on 04 Mar 2015, 14:23
I have found a bug.
There is one error with the mouse botton click_left function, alwais give this error.
(http://i59.tinypic.com/syqmag.jpg)
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Snarky on 04 Mar 2015, 14:47
Read the first post. ProcessClick() is now Room.ProcessClick() or GUI.ProcessClick().
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: monkey0506 on 04 Mar 2015, 16:09
The default template for this version wasn't updated to match the API changes. In the meantime, as Snarky said just rename it to Room.ProcessClick. You can also export a template as a replacement for the default template (for now). The templates will of course be updated before a final release is put up (bear in mind this is an alpha, mistakes may be made :P).
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: on 04 Mar 2015, 16:55
Ok thanks.
I'm happy, at last i'll can use ags for commercial games in hight res :). I wish this relase come out soon.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: AGD2 on 12 Mar 2015, 14:16
In addition to my above post containing the log files, here are a few more log files pertaining to running my game under 3.4.0.3 on a new Asus netbook/laptop without an integrated video card. I encountered various issues.

1) What version of AGS are you using;  3.4.0.3
2) What is your game resolution (in General Settings); 640 x 400
3) What settings do you set in setup; See Below
4) What is your desktop resolution. 1366 x 768

First Log: Direct3d 9> Full-screen> Mode: (Desktop res) 1366x768> Filter: Nearest-neighbour> Scaling: Max Fit> Stretch to fit screen (window)> Keep aspect ratio.

Note: This is about the only mode where the settings work as expected on this laptop.

Spoiler: ShowHide

Adventure Game Studio v3.4 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2015 others
ACI version 3.4.0.3

*** ENGINE STARTUP ***
Installing exception handler
Reading config file
Initializing allegro
Setting up window
Initializing game data
Game data file: c:/Users/Chris/repos/MAGES_~2/Compiled/Windows/MAGES_~1.EXE

Initializing TTF renderer
Initializing mouse
Checking memory
Initializing audio vox
Initializing keyboard
Install timer
Initialize sound drivers
Install exit handler
Initialize path finder library
Load game data
Game data version: 46
Requested engine version: 3.4.0.3
Game GUI version: 118
Mage's Initiation
Checking for disk space
Initializing MOD/XM player
Initializing resolution settings
Device display resolution: 1366 x 768
Game native resolution: 640 x 400 (32 bit)
Game settings: windowed = no, screen def: explicit, screen size: 1366 x 768, match device ratio: yes, frame placement: center
Built library path: d3d9.dll
Using graphics factory: D3D9
Created graphics driver: Direct3D 9
Supported gfx modes (32-bit):
   320x200;320x240;400x300;512x384;640x400;640x480;800x600;1024x768;
   1280x600;1280x720;1280x768;1360x768;1366x768;
Supported gfx modes (24-bit): none
Requested gfx filter: StdScale, filter scaling: max uniform
Using gfx filter: StdScale
Switching to graphics mode
Attempting to find nearest supported resolution for screen size 1366 x 768 (32-bit) fullscreen
Attempt to switch gfx mode to 1366 x 768 (32-bit) fullscreen; game frame: 640 x 400, frame placement: center
Succeeded. Using gfx mode 1366 x 768 (32-bit) fullscreen
   filter dest (363, 184, 1002, 583 : 640 x 400), render dest (363, 184, 1002, 583 : 640 x 400)
Preparing graphics mode screen
Initializing colour conversion
Check for preload image
Initialize sprites
Set up screen
Initialize game settings
Cannot open translation: default.tra
Prepare to start game
Audio is processed on the main thread
Checking replay status
Engine initialization complete
Starting game
Loading room 450
Room change requested to room 210
Unloading room 450
Loading room 210
WARNING: Not all of the Direct3D resources have been disposed; ID3D ref count: 1
***** ENGINE HAS SHUTDOWN



Second Log: Direct3d 9> Full-screen> Mode: (Game res) 640x400> Filter: Nearest-neighbour> Scaling: 1/2> Stretch to fit screen (window)> Keep aspect ratio.

Note: This ran at full-screen, but the 1/2 Scaling was not active. Upon loading, the game seemed to fall back to using the standard Max-Fit option.

Spoiler: ShowHide

Adventure Game Studio v3.4 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2015 others
ACI version 3.4.0.3

*** ENGINE STARTUP ***
Installing exception handler
Reading config file
Initializing allegro
Setting up window
Initializing game data
Game data file: c:/Users/Chris/repos/MAGES_~2/Compiled/Windows/MAGES_~1.EXE

Initializing TTF renderer
Initializing mouse
Checking memory
Initializing audio vox
Initializing keyboard
Install timer
Initialize sound drivers
Install exit handler
Initialize path finder library
Load game data
Game data version: 46
Requested engine version: 3.4.0.3
Game GUI version: 118
Mage's Initiation
Checking for disk space
Initializing MOD/XM player
Initializing resolution settings
Device display resolution: 1366 x 768
Game native resolution: 640 x 400 (32 bit)
Game settings: windowed = no, screen def: explicit, screen size: 640 x 400, match device ratio: yes, frame placement: proportional
Built library path: d3d9.dll
Using graphics factory: D3D9
Created graphics driver: Direct3D 9
Supported gfx modes (32-bit):
   320x200;320x240;400x300;512x384;640x400;640x480;800x600;1024x768;
   1280x600;1280x720;1280x768;1360x768;1366x768;
Supported gfx modes (24-bit): none
Requested gfx filter: StdScale, filter scaling: -2 x -2
Using gfx filter: StdScale
Switching to graphics mode
Attempting to find nearest supported resolution for screen size 640 x 400 (32-bit) fullscreen
Attempt to switch gfx mode to 1366 x 768 (32-bit) fullscreen; game frame: 320 x 200, frame placement: proportional
Succeeded. Using gfx mode 1366 x 768 (32-bit) fullscreen
   filter dest (69, 0, 1296, 767 : 1228 x 768), render dest (69, 0, 1296, 767 : 1228 x 768)
Preparing graphics mode screen
Initializing colour conversion
Check for preload image
Initialize sprites
Set up screen
Initialize game settings
Cannot open translation: default.tra
Prepare to start game
Audio is processed on the main thread
Checking replay status
Engine initialization complete
Starting game
Loading room 450
Room change requested to room 210
Unloading room 450
Loading room 210
WARNING: Not all of the Direct3D resources have been disposed; ID3D ref count: 1
***** ENGINE HAS SHUTDOWN



Third Log: Direct3d 9> Windowed> Mode: 640x400> Filter: Nearest-neighbour> Scaling: Max Fit> Stretch to fit screen (window)> Keep aspect ratio.

Note: This ran in a standard 640x400 window. The window was not stretched or scaled larger to fill the max size of the screen, as intended.

Spoiler: ShowHide

Adventure Game Studio v3.4 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2015 others
ACI version 3.4.0.3

*** ENGINE STARTUP ***
Installing exception handler
Reading config file
Initializing allegro
Setting up window
Initializing game data
Game data file: c:/Users/Chris/repos/MAGES_~2/Compiled/Windows/MAGES_~1.EXE

Initializing TTF renderer
Initializing mouse
Checking memory
Initializing audio vox
Initializing keyboard
Install timer
Initialize sound drivers
Install exit handler
Initialize path finder library
Load game data
Game data version: 46
Requested engine version: 3.4.0.3
Game GUI version: 118
Mage's Initiation
Checking for disk space
Initializing MOD/XM player
Initializing resolution settings
Device display resolution: 1366 x 768
Game native resolution: 640 x 400 (32 bit)
Game settings: windowed = yes, screen def: scaling, screen size: 1366 x 768, match device ratio: yes, frame placement: proportional
Built library path: d3d9.dll
Using graphics factory: D3D9
Created graphics driver: Direct3D 9
Supported gfx modes (32-bit):
   320x200;320x240;400x300;512x384;640x400;640x480;800x600;1024x768;
   1280x600;1280x720;1280x768;1360x768;1366x768;
Supported gfx modes (24-bit): none
Requested gfx filter: StdScale, filter scaling: max uniform
Using gfx filter: StdScale
Switching to graphics mode
Attempting to find nearest supported resolution for screen size 640 x 400 (32-bit) windowed
Attempt to switch gfx mode to 640 x 400 (32-bit) windowed; game frame: 640 x 400, frame placement: proportional
Succeeded. Using gfx mode 640 x 400 (32-bit) windowed
   filter dest (0, 0, 639, 399 : 640 x 400), render dest (0, 0, 639, 399 : 640 x 400)
Preparing graphics mode screen
Initializing colour conversion
Check for preload image
Initialize sprites
Set up screen
Initialize game settings
Cannot open translation: default.tra
Prepare to start game
Audio is processed on the main thread
Checking replay status
Engine initialization complete
Starting game
Loading room 450
Room change requested to room 210
Unloading room 450
Loading room 210
WARNING: Not all of the Direct3D resources have been disposed; ID3D ref count: 1
***** ENGINE HAS SHUTDOWN


Additionally, the issue with the game leaving behind residual boxes/windows on the taskbar after using ALT+X to shut it down also occurs on this laptop, when using Windows 8.1.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Billbis on 01 Apr 2015, 21:29
I used this version to create our MAGS game this month, all went smoothly, thanks a lot contributors!
(http://r28.imgfast.net/users/2813/62/11/77/smiles/114419.png)
I only notice two issues:
- I was not able to modify my game executable icon, user.ico didn't worked. :( The setup.ico did work. When the setup.ico was rename user.ico, it still did not change the game executable icon so it does not seems to be a issue with my .ico files.
- When compiling a translation, then delete it (it was a proofreading, not a proper translation, I used "make this the default language"), while the translation was deleted in the project tree, the .tra files were not deleted from the compile folder and were embedded in the Windows and Linux folder.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: nims on 11 Apr 2015, 23:25
Hi,

I am wondering if it is possible to get nightly builds of this latest version? I am happily using it right now, but since there is still a lot of things going on with this version, I am happy to keep my editor up to date. I just use the download link on the first page, but it is v3.4.0, from January 2015.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: dbuske on 25 Apr 2015, 14:53
Hi,

I am wondering if it is possible to get nightly builds of this latest version? I am happily using it right now, but since there is still a lot of things going on with this version, I am happy to keep my editor up to date. I just use the download link on the first page, but it is v3.4.0, from January 2015.

It is probably better to wait wait for the betas or better. Bugs have to be chased down and fixed.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 25 Apr 2015, 16:34
I was taken away from any development in the last couple of months, having some uncertainties IRL that should have been solved.

One of the thing that troubles me much is that working on AGS in a short periods of time (which are usually late at night) becomes more and more tiresome to me. Its not only physical tiredness, but also psychological one. There are things, such as new features, or bugs, that require doing prolonged research, or planning, and it is very difficult to do when you have only couple of hrs per day (and even not every day) when you are back from the work. Sometimes I can't focus on the task, sometimes I just forget where I stopped last time and have to start all over.

I became pretty desperate and was even considering quitting my full time job (which I do not really like now, to be honest) and assigning maybe several months to work on AGS full-time. I've even spoke with my chief about this possibility. Unfortunately (in certain sense), it appears that the work I do ATM has a key priority for the company, and they can't find anyone to replace me any time soon. Although I am very bored with that particular work, my coleagues there are very nice people whom I would not like to let them down.
So, the perspectives of my participation in the project are vague at this time.
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: LameNick on 25 Apr 2015, 21:23
If they can't let you go nor give you more free time, you should tell them to take on the development of ags.(laugh)
Title: Re: AGS 3.4.0.3 (Alpha) - Click And Script
Post by: Crimson Wizard on 26 Apr 2015, 21:13
I hope to find some time on following week and make a better solution for mouse sensitivity (http://"http://www.adventuregamestudio.co.uk/forums/index.php?topic=51695.0").
If I fail, I will still make a new public release without one, because there are couple of new features and fixes prepared for some time already.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Crimson Wizard on 27 Apr 2015, 22:41
I decided to make a relase as-is, because a lot of time passed since last release, and this is a WIP version anyway.
It does not contain mouse sensitivity feature yet. I need to work on it more. If I get it working properly, I'll make another release then.


Meanwhile...

AGS 3.4.0.4 (Alpha) - Properties of Light
(yeah, I spent like one hour inventing this name)

ZIP-archive:
http://www.mediafire.com/download/2dfy26nj1t614qd/AGS_3.4.0.4-Alpha-PropertiesOfLight.zip

Debug symbols (for developers):
http://www.mediafire.com/download/6d9q7fpe6w427me/PDB_3_4_0_4.zip

This release makes Custom Properties modifiable at runtime :=, and also adds complementary script functions related to individual object light levels.
Well, and bug fixes, of course.
Includes all changes from 3.3.3 release (http://www.adventuregamestudio.co.uk/forums/index.php?topic=51425.0)

What's new since 3.4.0.3:

Common features
Papagayo format is now supported for lip syncing
The use is similar to Pamela lip-syncing.


Editor
Improvements
* Region's TintLuminance property can be set in the Room Editor, along with other Region's tint settings.
* "Close all tabs" command for the pane's context menu.

Bug Fixes
* Implemented several missing limits checks for the new game compiler.
* Fixed writing faulty timestamps in project file on some occasions that could spoil usage of file versioning control.


Editor Plugin API
* Exposed GUI Panes to plugin API.


Script API

Custom property values can be set at runtime

The related script functions are added to all classes that supported GetProperty() and GetTextProperty(), that is - Room, InventoryItem, Hotspot, Object and Character:
Code: Adventure Game Studio
  1.   /// Sets an integer custom property associated with this room.
  2.   static bool SetProperty(const string property, int value);
  3.   /// Sets a text custom property associated with this room.
  4.   static bool SetTextProperty(const string property, const string value);
  5.  
They return 'true' if the property value was changed, or 'false' if such property does not exist, or property type is incorrect (like setting text value for integer property).

NOTE: Room, Hotspots and room Objects property values are reset to defaults when ResetRoom() is called.


Improvements to Tinting functions to make various tinting methods and properties compliant.
(This should be compatible with Draconian Edition scripts)

Region.Tint() script function now has optional luminance parameter
Code: Adventure Game Studio
  1. void Tint(int red, int green, int blue, int amount, int luminance = 100);

New SetAmbientLightLevel() script function.
Code: Adventure Game Studio
  1.   /// Sets an ambient light level that affects all objects and characters in the room.
  2.   void SetAmbientLightLevel(int light_level);
  3.  

New Character.SetLightLevel and Object.SetLightLevel script functions
Code: Adventure Game Studio
  1.   /// Sets the individual light level for this character.
  2.   import function SetLightLevel(int light_level);
  3.  

Negative light levels can be used in 8-bit games to produce darkening effect.
This applies to Ambient, Character and Object light level functions (it already worked with Region.LightLevel).


Scripting
Improvements
* Removed 10,000 script symbols limit. Now you can have more variables and functions in scripts, and not worry about too many game objects with script names in general.

Variable declarations in "for" loop initialisers
This allows syntax like `for(int i = 0; i < 10; i++)` where `i` is a
variable local to the for loop.

Bug Fixes
* Do not parse *= as one operator in pointer parameter declarations.
* Fixed "Size of identifier does not match prototype" error shown unexpectedly for correct script.




Engine
Improvements
* DynamicSprite.CopyTransparencyMask() now does not overwrite transparency on destination with opaqueness from mask.
* Engine will now try to use all available graphic renderers in an order of priority, if the previous ones fail.
(Now Direct3D will be tried if Software renderer was requested by user but failed.)
* More precise detection of max possible window size when initializing windowed display mode.

Bug Fixes
* Fixed engine did not properly try to initialize opposite display mode if windowed or fullscreen mode failed (introduced in 3.4.0.0).
* Proper ARGB-to-RGB and RGB-to-ARGB blenders used in 32-bit games (opaque sprites combined with sprites with alpha). This was broken for particular cases in 3.4.0.2.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Monsieur OUXX on 28 Apr 2015, 14:05
* Exposed GUI Panes to plugin API.
* DynamicSprite.CopyTransparencyMask() now does not overwrite transparency on destination with opaqueness from mask.

Neat! That got me excited.

Question: Does the "luminance" parameter allow to make the sprite brighter than originally, or does "100" still match regular brightness?
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Crimson Wizard on 28 Apr 2015, 14:13
Question: Does the "luminance" parameter allow to make the sprite brighter than originally, or does "100" still match regular brightness?
Luminance works same way in all tint functions, you may refer to SetAmbientTint (http://www.adventuregamestudio.co.uk/wiki/Game_/_Global_functions#SetAmbientTint):
Quote
The SATURATION parameter defines how much the tint is applied, and is from 0-100. A saturation of 100 will completely re-colourize the sprites to the supplied colour, and a saturation of 1 will give them a very minor tint towards the specified colour.

The LUMINANCE parameter allows you to adjust the brightness of the sprites at the same time. It ranges from 0-100. Passing 100 will draw the sprites at normal brightness. Lower numbers will darken the images accordingly, right down to 0 which will draw everything black.
NOTE: the "amount" is "saturation" (I think I forgot to rename it).

On contrary, new SetLightLevel functions works same as in Region.LightLevel (http://www.adventuregamestudio.co.uk/wiki/Region_functions_and_properties#Region.LightLevel):
Quote
The light level is from -100 to 100. This is different from the editor, which takes values from 0 to 200. Subtract 100 from the value you would use in the editor when calling this function. The reason for this discrepancy is legacy reasons from the DOS editor days.

To disable region lighting and tinting effects, set LightLevel to 0.
The 256-color games can only use LightLevel = -100 to 0 (darkening only).


This new version made both full Tint functions (RGB-S-L) and Light Level property work in all kind of ways:
* per Region;
* Ambience (all room) - overrides regions;
* per Character / Object - overrides ambience and regions.

This is not a completely new feature, but rather a logical completion of existing feature.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: cat on 28 Apr 2015, 14:27
Is the fix that Gurok made regarding the not compiling modules also included in this version?
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Crimson Wizard on 28 Apr 2015, 14:38
Is the fix that Gurok made regarding the not compiling modules also included in this version?
Yes, all fixes by Gurok are in there. I believe the one that you were interested with is
Quote
Fixed "Size of identifier does not match prototype" error shown unexpectedly for correct script.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: cat on 28 Apr 2015, 14:45
Thanks, then I will upgrade to the next alpha.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: ChamberOfFear on 28 Apr 2015, 21:47
Editor
Improvements
* "Close all other tabs" command for the pane's context menu.

Tiny correction; the "Close all others tabs" command already existed before this release, it is the "Close All" command that has been implemented. What happened with the "Close all others" is that the confirmation dialog was removed.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: cat on 29 Apr 2015, 19:31
Everything is compiling and running smoothly, thanks for this official alpha version :)

When I opened my project, there was a message box stating that there was obviously some kind of note-plugin in the inofficial test version I was using before. This seemed to be useful as I usually keep my notes in a todo.asc file in the project. Will this be included in a future version or can I get this separately?

(Completely OT: ChamberOfFear, is this Blacksad in your avatar?)

Edit: One more thing: Setting the User.ico does not seem to work anymore, but Setup.ico seems to work, even if not for all display modes (or maybe my windows has just display issues)
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: monkey0506 on 29 Apr 2015, 19:45
user.ico is a known issue of this alpha since the new build target interfaces were added. I've been over the code and AFAICT, nothing pertinent has actually even changed. The generated EXE is identical, so there should be nothing preventing the icon being updated.

In fact, in my test, the native methods responsible for updating the icon are reporting success.

I may look into refactoring the icon updating to a C# method instead and see if that fixes the problem. The native interop is still somewhat perplexing to me, so I could be overlooking something simple.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: ChamberOfFear on 29 Apr 2015, 19:47
When I opened my project, there was a message box stating that there was obviously some kind of note-plugin in the inofficial test version I was using before. This seemed to be useful as I usually keep my notes in a todo.asc file in the project. Will this be included in a future version or can I get this separately?

(Completely OT: ChamberOfFear, is this Blacksad in your avatar?)

Edit: One more thing: Setting the User.ico does not seem to work anymore, but Setup.ico seems to work, even if not for all display modes (or maybe my windows has just display issues)
Can't answer if it will ever become included by default but you can grab it here http://www.adventuregamestudio.co.uk/forums/index.php?topic=51191.0

(Completely OT: ChamberOfFear, is this Blacksad in your avatar?)
Yep. (http://www.tentacules.net/toc/toc_/toceurcorner/toceur817_539_0001.jpg)
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Crimson Wizard on 29 Apr 2015, 20:43
When I opened my project, there was a message box stating that there was obviously some kind of note-plugin in the inofficial test version I was using before. This seemed to be useful as I usually keep my notes in a todo.asc file in the project. Will this be included in a future version or can I get this separately?
I never intended to include any editor plugins in these releases, but ofcourse we may include some popular plugins if the demand is high.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: cat on 29 Apr 2015, 21:06
The plugin doesn't seem to work with the current alpha anyway (I posted in the plugin thread already).

Now that I know what plugin it is I can just use it anytime. I just didn't know that such plugins even existed. I guess I have to thoroughly search the modules & plugins section of the forum for more useful stuff ;)
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Gurok on 29 Apr 2015, 23:27
Oh I'm sorry, cat. I think it's because that test copy came from me and I probably accidentally grabbed everything from my AGS directory with it. You can ignore the plugin. I know it's broken with the latest alpha.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Crimson Wizard on 30 Apr 2015, 00:00
I know it's broken with the latest alpha.
Hmm, and why? What has changed?
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Gurok on 30 Apr 2015, 00:12
Hmm, and why? What has changed?

Sorry, not your fault. I shouldn't have said "with the latest alpha". It's probably been broken for longer than just the latest alpha. I don't know exactly. I assume I'm doing something incorrectly. There's an intermittent problem with initialising a Scintilla editor that I've never bothered to track down because I've never had time. :/
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Monsieur OUXX on 30 Apr 2015, 13:13
SetLightLevel
Cool cool cool! :-*
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Terrorcell on 04 May 2015, 17:06
I've found a bug relating to for loops and 'continue' (reproducible). I created a game from the Default Game template, placed that code in the first room's room_FirstLoad() function, and tried to compile.

Example:
Code: Adventure Game Studio
  1. function room_FirstLoad()
  2. {
  3.     for (int i = 0; i < 10; i += 1)
  4.     {
  5.         if (true)
  6.         {
  7.             continue;
  8.         }
  9.     }
  10. }
  11.  

Error while compiling:
Spoiler: ShowHide
Error: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
Version: AGS 3.4.0.4

System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt. ---> System.AccessViolationException: Attempted to read or write protected memory. This is often an indication that other memory is corrupt.
   at ccCompileText(SByte* , SByte* )
   at AGS.Native.NativeMethods.CompileScript(Script script, String[] preProcessedScripts, Game game, Boolean isRoomScript)
   at AGS.Editor.NativeProxy.CompileScript(Script script, String[] preProcessedData, Game game, Boolean isRoomScript)
   at AGS.Editor.AGSEditor.CompileScript(Script script, List`1 headers, CompileMessages errors, Boolean isRoomScript)
   at AGS.Editor.Components.RoomsComponent.Sa veRoomOnThread(Object parameter)
   at AGS.Editor.BusyDialog.RunHandlerOnThrea d()
   --- End of inner exception stack trace ---
   at AGS.Editor.BusyDialog.Show(String message, ProcessingHandler handler, Object parameter)
   at AGS.Editor.Components.RoomsComponent.Sa veRoomButDoNotShowAnyErrors(Room room, CompileMessages errors, String pleaseWaitText)
   at AGS.Editor.Components.RoomsComponent.Re compileAnyRoomsWhereTheScriptHasChanged (CompileMessages errors, Boolean rebuildAll)
   at AGS.Editor.Components.RoomsComponent.AG SEditor_PreCompileGame(PreCompileGameEventArgs evArgs)
   at AGS.Editor.AGSEditor.PreCompileGameHand ler.Invoke(PreCompileGameEventArgs evArgs)
   at AGS.Editor.AGSEditor.CompileGame(Boolean forceRebuild, Boolean createMiniExeForDebug)
   at AGS.Editor.Components.BuildCommandsComp onent.CompileGame(Boolean forceRebuild)
   at AGS.Editor.Components.BuildCommandsComp onent.CommandClick(String controlID)
   at AGS.Editor.ToolBarManager.ToolbarEventH andler(Object sender, EventArgs e)
   at System.Windows.Forms.ToolStripItem.Rais eEvent(Object key, EventArgs e)
   at System.Windows.Forms.ToolStripButton.On Click(EventArgs e)
   at System.Windows.Forms.ToolStripItem.Hand leClick(EventArgs e)
   at System.Windows.Forms.ToolStripItem.Hand leMouseUp(MouseEventArgs e)
   at System.Windows.Forms.ToolStripItem.Fire EventInteractive(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStripItem.Fire Event(EventArgs e, ToolStripItemEventType met)
   at System.Windows.Forms.ToolStrip.OnMouseU p(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 AGS.Editor.ToolStripExtended.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNat iveWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNat iveWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callb ack(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Gurok on 04 May 2015, 23:18
I'm looking into this. At least it's not a stack pointer problem :/

EDIT: Found the problem, reproduced it, sufficiently embarrassed. I have a pull request on the Git repository that fixes this.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Terrorcell on 05 May 2015, 13:33
I'm looking into this. At least it's not a stack pointer problem :/

EDIT: Found the problem, reproduced it, sufficiently embarrassed. I have a pull request on the Git repository that fixes this.
One step closer to the final build :tongue:
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: proximity on 17 May 2015, 17:49
When i go fullscreen with my test game, mouse cursor moves weird. Is this a known issue ?

Game resolution : 1920*1080
Dekstop resolution : 1920*1080
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: xil on 17 May 2015, 23:36
When i go fullscreen with my test game, mouse cursor moves weird. Is this a known issue ?

Game resolution : 1920*1080
Dekstop resolution : 1920*1080

Unfortunately so. It does only tend to be with certain mice and certain drivers though (essentially the types of mice that tend to fall into the 'gaming' category e.g. high DPI).
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: proximity on 18 May 2015, 02:17
When i go fullscreen with my test game, mouse cursor moves weird. Is this a known issue ?

Game resolution : 1920*1080
Dekstop resolution : 1920*1080

Unfortunately so. It does only tend to be with certain mice and certain drivers though (essentially the types of mice that tend to fall into the 'gaming' category e.g. high DPI).

So you're saying some of the players will get smooth movement, others will get this jump effect with the cursor. This is bad.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: xil on 18 May 2015, 03:09
When i go fullscreen with my test game, mouse cursor moves weird. Is this a known issue ?

Game resolution : 1920*1080
Dekstop resolution : 1920*1080

Unfortunately so. It does only tend to be with certain mice and certain drivers though (essentially the types of mice that tend to fall into the 'gaming' category e.g. high DPI).

So you're saying some of the players will get smooth movement, others will get this jump effect with the cursor. This is bad.

Well "jump effect" makes me wonder if we are experiencing the same thing. The current issue with certain mice/driver setups is to do with the acceleration. Some people with the affected devices may not even notice an issue because generally speaking adventure games do not require twitch reactions. If you move an affected device smoothly then the pointer will react smoothly, if you move an affected device very quickly then that's when a player might have issues (it may be similar to what you refer to as the mouse "jumping").

The problem is being worked on currently so hopefully it can be resolved. There has been test builds over the last few months which reduce the issue but don't fix it, so perhaps one of those solutions will be integrated if the issue is too difficult or impossible to solve completely.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: proximity on 18 May 2015, 17:58
No, we're not experiencing the same thing. It's not about cursor's movement speeed or sensitivity. When i move the cursor in fullscreen test, cursor does not always go to the location where i pointed to. It's jumping to 20-30, maybe more pixels away from the point. So i feel like i don't have full control of the cursor. When i test it in windowed mode, there is no problem with the movement. I can explain that "jump" effect like this.

Note : After writing this post, i tested it again with very slow moves. Result is the same. There is no difference between slow moves and fast moves. By the way, my mouse is Logitech M235 Wireless Nano device. Should i test it with another mouse ?
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: xil on 18 May 2015, 18:09
Unfortunately it does seem that the Logitech mice and drivers are the worst affected. I can go from my Razer Naga to a cheap non branded mouse and have the movement go from barely usable to perfect by simply switching mice. Switching mice does seem to be the only way for people using affected Logitech devices to play in fullscreen for the time being.

Hopefully it will be something that can be sorted for the next major version.

Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: proximity on 18 May 2015, 18:21
 I found a cheap and wired mouse and tested it again. Result is still the same :( I think this is related to fullscreen rendering of the engine. May be AGS does not handle high resolutions very well.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: xil on 18 May 2015, 18:27
I found a cheap and wired mouse and tested it again. Result is still the same :( I think this is related to fullscreen rendering of the engine. May be AGS does not handle high resolutions very well.

Damn, that's not good :-\ I'll have a look myself later on in a high res test. At least we can pass some more data to the dev working on it which might allow him to debug the problem further.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: AGD2 on 20 May 2015, 08:43
Great to see all these improvements finally rolled into one. Nice job, CW. And thanks again to Gurok for getting that Papagayo support implemented. That'll be a real time-saver!

I've started testing the Mage's Initiation source code in this latest alpha. And I seem to encounter Illegal exception crashes whenever ResetRoom() is called. I'm always calling it in a room other than the one that I'm trying to reset - typically in the room_Load function. Here's an example of the crash message I'll receive:

Spoiler: ShowHide

---------------------------
Illegal exception
---------------------------
An exception 0xC0000005 occurred in ACWIN.EXE at EIP = 0x0042BE65 ; program pointer is +1004, ACI version 3.4.0.4, gtags (15249,387)

AGS cannot continue, this exception was fatal. Please note down the numbers above, remember what you were doing at the time and post the details on the AGS Technical Forum.

in "room2.asc", line 243


Also, regarding removal of the confirmation prompt when closing all other tabs, can I make a request for that to be reimplemented (or at least optional in the settings)? Many's the time I've had numerous important tabs open (sometimes 30+) when I accidentally mis-clicked "close all tabs". That confirmation prompt saved my skin and prevented me from losing my place during complex coding sessions. Since 'closing all other tabs' doesn't seem to be an action the user will be performing very frequently, I think the usefulness of the safeguard outweighs the minor hindrance of having to click an extra dialog button from time to time.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: CTxCB on 30 May 2015, 00:35
I've got an improvement that I'd LOVE to see added: When right clicking on a GUI in the Project Explorer, have a "Duplicate GUI" option. This would copy everything from the selected GUI and create a new GUI with a standard name (E.g: gGui1) from it.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Armageddon on 31 May 2015, 05:25
I'm curious, why doesn't this version of AGS include the character scaling fix from the Draconian version of AGS? I like that feature in the Draconian version but I also want custom resolution sizes from this version. :P
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Terrorcell on 31 May 2015, 07:50
I've got an improvement that I'd LOVE to see added: When right clicking on a GUI in the Project Explorer, have a "Duplicate GUI" option. This would copy everything from the selected GUI and create a new GUI with a standard name (E.g: gGui1) from it.
Considering all the contents of each GUI are public to each script, the duplication would have to account for buttons, etc., with the same names.
I agree, it would be a nice feature.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Crimson Wizard on 31 May 2015, 11:07
I'm curious, why doesn't this version of AGS include the character scaling fix from the Draconian version of AGS?
Not only that, I believe.
May someone make a list of things that were not copied from Draconian yet?
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: proximity on 01 Jun 2015, 01:25
Hi, Crimson. I can't get a screenshot of the game when i press the PrtScr button on my keyboard. I just get black screen. Is this a known issue ?

Game resolution : 1920*1080 full screen
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Armageddon on 01 Jun 2015, 03:49
I'm curious, why doesn't this version of AGS include the character scaling fix from the Draconian version of AGS?
Not only that, I believe.
May someone make a list of things that were not copied from Draconian yet?
I think it's just the character scaling and the gamma adjustment, unless anyone cares about the DirectDraw pixel shaders, you shouldn't use DirectDraw anyways.

What are the chances of fixing the character scaling in this engine branch though/how soon? I know the Draconian version is open source too.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: AGD2 on 01 Jun 2015, 09:55
Keep in mind that the character scaling fix is also meant to be optional, for the reasons previously discussed in the following thread:

http://www.adventuregamestudio.co.uk/forums/index.php?topic=47966.msg636472949#msg636472949
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Armageddon on 02 Jun 2015, 00:50
Quote from: Snarky
Like Scavenger says, this is a hideous bug that should be fixed ASAP, and I find the decision to deliberately inflict it on your game deeply disturbing. Plus, relying on players not changing the filter settings?! Madness!

I don't think we should all suffer just because your one game uses the bug in a strange way. Most people would prefer to have it fixed.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Crimson Wizard on 02 Jun 2015, 00:55
Quote from: Snarky
Like Scavenger says, this is a hideous bug that should be fixed ASAP, and I find the decision to deliberately inflict it on your game deeply disturbing. Plus, relying on players not changing the filter settings?! Madness!

I don't think we should all suffer just because your one game uses the bug in a strange way. Most people would prefer to have it fixed.
If made, it will be made optional anyway, because my current condition is backwards compatibility too.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: AGD2 on 02 Jun 2015, 01:07
No suffering. This would be an optional line in the .cfg file, and the default would be set to the new fixed style.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Crimson Wizard on 02 Jun 2015, 01:37
To reply to proximity's and xil's discussion regarding mouse movement in fullscreen (found on previous page of this thread), this is known issue and discussed here:
http://www.adventuregamestudio.co.uk/forums/index.php?topic=51695.0

I was looking to find the solution, but result is not acceptable at the moment. I will make another attempt soon. I have a plan to research other open sourced engines/games I know, like DOSBox, OpenTTD.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Crimson Wizard on 02 Jun 2015, 02:16
I've started testing the Mage's Initiation source code in this latest alpha. And I seem to encounter Illegal exception crashes whenever ResetRoom() is called. I'm always calling it in a room other than the one that I'm trying to reset - typically in the room_Load function.

OMG, I wrote an endless "for" loop endlessly deleting objects from memory.
Fixed.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Armageddon on 02 Jun 2015, 02:57
No suffering. This would be an optional line in the .cfg file, and the default would be set to the new fixed style.
I think it'd be better to have it in the editor options to compile with it. I wouldn't want players changing it by mistake.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Crimson Wizard on 02 Jun 2015, 09:11
Say... is it not what "Smooth scaled sprites" config option does?

E: There is also "game.disable_antialiasing" script variable that disables this effect regardless of user settings.


If not, how do I achieve the effect? Does it occur with specific renderer only, for instance? Some info would help.

The only reference to "zooming" I found in Draconian Edition thread is this:
Quote
Fixed Scaling on D3D (and now works fine with "Smooth scaled sprites" option)
It does not sound as same issue to me; could it be you were talking about two different problems?
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: AGD2 on 02 Jun 2015, 10:36
I think it'd be better to have it in the editor options to compile with it. I wouldn't want players changing it by mistake.

Yeah, that would be fine, too.

Quote from: Crimson Wizard
Say... is it not what "Smooth scaled sprites" config option does?

E: There is also "game.disable_antialiasing" script variable that disables this effect regardless of user settings.


If not, how do I achieve the effect? Does it occur with specific renderer only, for instance? Some info would help.

The only reference to "zooming" I found in Draconian Edition thread is this:

    Fixed Scaling on D3D (and now works fine with "Smooth scaled sprites" option)

It does not sound as same issue to me; could it be you were talking about two different problems?

The issue I'm refering to is the one talked about in this post (http://www.adventuregamestudio.co.uk/forums/index.php?topic=47966.msg636472949#msg636472949).

To quote Radiant:

"There's a graphical glitch with the Nearest Neighbor filter: it is not applied to characters. If using (e.g.) the 4x NN filter, then each pixel in the game is displayed as a 4x4 block of pixels on the screen. However, characters if zoomed use the full resolution, not 4x4 blocks. It appears the graphical operations are performed in the wrong order: the character is enlarged to 400% first, then reduced from there to account for scaling; whereas it should be the other way around; this discrepancy simply looks odd, as if the characters use a higher resolution than the backgrounds. I haven't checked, but this likely also applies to objects."

It only happens with the D3D driver. And it does only affect characters, not objects.

I'm not sure if this was fixed in the Draconian edition, but since it's a glitch people had been talking about fixing for a while, I'd assumed it was the same thing. Can you confirm, Armageddon?
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Armageddon on 02 Jun 2015, 10:39
The only reference to "zooming" I found in Draconian Edition thread is this:
Quote
Fixed Scaling on D3D (and now works fine with "Smooth scaled sprites" option)
It does not sound as same issue to me; could it be you were talking about two different problems?
That's exactly the fix that's needed for this version of AGS.

And you are correct! In the Draconian version that has scaling fixed, if you scale up a character and have smooth scaling enabled in the winsetup it will still retain the effect that exists now that AGD2 requires.

game.disable_antialiasing doesn't do anything as far as I can tell.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: AGD2 on 02 Jun 2015, 10:59
I just confirmed that is is, indeed, already addressed in the Draconian edition. Below are screenshots of a 640x480 game, running under the NN filter at 1280x960.

(http://himalayastudios.com/scratch/Character_Scaling_333.png)

(http://himalayastudios.com/scratch/Character_Scaling_Draconian.png)

--EDIT--

Quote
In the Draconian version that has scaling fixed, if you scale up a character and have smooth scaling enabled in the winsetup it will still retain the effect that exists now that AGD2 requires.

In my tests with the Draconian, using smooth scaling didn't seem to have this effect. The Draconian screenshot I posted above has smooth scaling enabled for both DX5 and D3D9 drivers. But under Draconian, smooth scaling with the D3D9 driver results in characters displayed in the game resolution.

Also, pixel art sprites are somewhat ruined by smooth scaling, so the ideal solution would be not to rely on having winsetup options to control this, but rather for it to be an independent option in the editor compiler, like you mentioned above.
Title: Re: AGS 3.4.0.4 (Alpha) - Properties of Light
Post by: Armageddon on 02 Jun 2015, 23:06
Sorry, you are correct, I was testing with a black background and small character so it looked extra blurry to me with smooth scaling on. I still think this is something that many people would like fixed more than not.
Title: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 08 Jun 2015, 12:43
AGS 3.4.0.5 (Alpha) - June Patch

ZIP-archive:
http://www.mediafire.com/download/c6dgbooaz8qgb3c/AGS_3.4.0.5-Alpha-JunePatch.zip

Debug symbols (for developers):
http://www.mediafire.com/download/5po297zlbb48h3h/PDB-3_4_0_5.zip


This is primarily a bug fixing update.
Includes all bug fixes from 3.3.4 pre-release (http://www.adventuregamestudio.co.uk/forums/index.php?topic=52244.0).


Changes since 3.4.0.4:

Editor
Improvements
* Added Preference option "Prompt dialog on closing multiple tabs".

Bug Fixes
* Fixed compiler crash related to "continue" statement inside loop.
* Fixed Help window positioning on multi-monitor desktop.


Engine

Bug Fixes
* Fixed crash in ResetRoom() script function.
* Fixed potential crash occuring when loading a savedgame made when game file had different name.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: monkey0506 on 13 Jun 2015, 07:35
I attempted to upgrade The Apotheosis Project to 3.4.0.4 to see how well it would work out. Initial builds seemed fine, but as room scripts were modified, somehow the room file version was changed. The editor could still read all of the CRM files just fine, but the engine crashed immediately, denoting a "bad packed file". The only place this seems to happen is if the room file version has a mismatch, but I haven't yet been able to pull out what file version is being reported. Still have the bad CRM files, but I'm attempting to revert to AGS 3.3.3 for now.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 13 Jun 2015, 13:30
I was testing compilation of 3.3.3 projects number of times, but never met the error you are describing.
Did you use legacy compiler or new compiler?
Can I get the erroneous project for a test?
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: monkey0506 on 13 Jun 2015, 18:34
It was definitely using the new compiler. Project was imported from 3.3.3 and worked fine initially. I'm actually curious if the files became corrupted when the computer restarted (automatically) for Windows Updates. I may have left the project open for several days...

I'd have to talk to m0ds to see if he's okay with me sending you files (as this isn't my game). As I said, I preserved the bad CRM files, so perhaps I can create a new project with 1 or 2 of these bad rooms. I'll let you know what he says. I hadn't modified any of the rooms except to edit their script files, so in the end I extracted the old CRM files back on top of the project and rebuilt, seemingly fixing everything.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 13 Jun 2015, 22:15
I'd have to talk to m0ds to see if he's okay with me sending you files (as this isn't my game).
I will make an oath that I delete it after I finish my tests :D.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: proximity on 20 Jun 2015, 17:02
When i try to play an .ogv video it says "unable to load theora video". It doesn't even compile the OGV video in to the game.exe. It just copies it from compiled and pastes it to Windows/Linux folder. Please help :(
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 20 Jun 2015, 22:12
When i try to play an .ogv video it says "unable to load theora video". It doesn't even compile the OGV video in to the game.exe. It just copies it from compiled and pastes it to Windows/Linux folder. Please help :(
There might be a bug in new compiler. We will look into this, until then try doing File -> Preferences and click on "Use legacy compiler" (bottom-left of the dialog).
Delete Compiled folder completely and do Rebuild All.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: proximity on 21 Jun 2015, 16:04
Thanks Crimson, i will try that.

Edit : I give up. There is no way the engine plays .ogv or .ogg videos. I think i will use .avi or .mpg instead.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 24 Jun 2015, 21:23
Edit : I give up. There is no way the engine plays .ogv or .ogg videos. I think i will use .avi or .mpg instead.
Why do you give up, this is something I must fix if its broken!

EDIT: I just did a test, and OGV plays nice for me.
Where do you put the file? I placed it in the game project folder (same folder where Game.agf is).

Quote from manual (PlayVideo article):
Quote
The first is OGG Theora, which is a recently introduced video file format. AGS has built-in support for playing these videos, so everyone who plays your game will be able to see the video. OGG Theora videos are also built into the game EXE file when you compile the game (just make sure the file has a .OGV extension and is placed in your main game folder).
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: proximity on 29 Jun 2015, 15:37
I put OGV and OGG files in the main game folder, just like you. After then, i compiled the game. The video files were copied to the compiled folder. In the game, when i call PlayVideo command it just says "Unable to load theora video". I used version AGS 3.4.0.4. Those OGG and OGV files aren't broken because i can play them in a video player. I'd read the AGS help file 5 times before i tried it :smiley:

So, did you do something extra ? What am i missing ? Wrong version of OGV video may be ?

Edit : I tried it again. This time it worked :smiley: It played the video black & white ??? I tried all 4 flags but the result is the same.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 29 Jun 2015, 15:48
Well, earlier you said:
It doesn't even compile the OGV video in to the game.exe. It just copies it from compiled and pastes it to Windows/Linux folder.
This made me think you put it into "Compiled" folder instead.


I used this video for a test: https://commons.wikimedia.org/wiki/File:Examplevideo.ogv
I did no extra actions.


Someone had a problem with OGV not playing too recently, but in his case it was Windows Explorer hiding incorrect extension. Please check if it is not your case:
http://www.adventuregamestudio.co.uk/forums/index.php?topic=52325.msg636516164#msg636516164


If it is not related, may you send me the video you are using?


EDIT
Edit : I tried it again. This time it worked :smiley: It played the video black & white ???
This is something beyond my knowledge, I am afraid.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: proximity on 29 Jun 2015, 16:20
I downloaded and played your video in the game. It played clear and smooth. My video is conversion from .avi and i think it's a bad conversion.

After comparing two videos, i realized that encoder of them are different. My video is encoded by Lavc56.41.100 libtheora, and yours is encoded by ffmpeg2theora-0.23.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: xil on 29 Jun 2015, 16:31
I seem to be having trouble playing .ogg sound effects in 3.4.0.5 - It plays them no problem in the editor but once running the game, I can't hear them.

If you get a few mins could anyone let me know if you have the same issue? .ogg files play fine for me in the previous minor versions, it's just 3.4.0.5 that seems to have issues.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 29 Jun 2015, 16:42
I seem to be having trouble playing .ogg sound effects in 3.4.0.5 - It plays them no problem in the editor but once running the game, I can't hear them.

If you get a few mins could anyone let me know if you have the same issue? .ogg files play fine for me in the previous minor versions, it's just 3.4.0.5 that seems to have issues.

Can you try out your ogg files in AGS 3.3.3? An OGG-related fix was made in there.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: xil on 29 Jun 2015, 17:20
Hmm, just for sake of argument I booted up a 3.3.3 and a 3.4.0.5 and loaded in the default game template. Adding the .ogg file and playing worked perfectly in both versions which means it must be my specific game. I'm going to have to investigate to see what is different with the game I created using the blank template in 3.4.0.5 as that still won't play .ogg files.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Problem on 02 Jul 2015, 08:47
So we're currently beta testing Rogue State, and one of our testers has reported a strange bug that seems to be related to the new "free display resolutions" feature.

The first time he played the game, everything worked. A couple of days later, he got this error message when he tried to run the game:

(https://dl.dropboxusercontent.com/u/1891681/screenshots/wrongresolution.png)

It's clear that the reported resolution of 1680x1009 makes no sense at all. He tried to change the resolution with winsetup.exe, but this didn't solve the problem. Strangely, he was able to start the game on the next day, without making any further changes to the settings.
So we couldn't reproduce the bug, but we'll try to find out if anything was different when this bug occurred and if it can be reproduced somehow. The beta version he's currently playing was built with 3.4.0.4
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 02 Jul 2015, 09:09
So we're currently beta testing Rogue State, and one of our testers has reported a strange bug that seems to be related to the new "free display resolutions" feature.

The first time he played the game, everything worked. A couple of days later, he got this error message when he tried to run the game:

I suggest to add a log option to your acsetup.cfg:
Code: Text
  1. [misc]
  2. log=1
  3.  
If similar error ever occur again we may get details from the log.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Problem on 02 Jul 2015, 09:12
Alright, we'll be doing this for the next beta and see if we can reproduce it.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: xil on 07 Jul 2015, 15:38
I seem to have come across some sort of bug to do with the custom resolutions and fonts/elements on GUIs, I've tested it in 3.4.0.3, 3.4.0.4 and 3.4.0.5 and it seems to behave the same way.

I originally set my game up to be 320x180 and everything was working fine with no issues. I then decided to up the resolution to 480x270. I had the system auto resize the GUIs and then I went to reimport the sprites. Everything was fine until I used one of the sprites on a button and noticed this 'bug'?

x1 x2 x4 x8


I have tried going back and forth between various resolutions but I can't quite figure out if the font is simply not adhering the new resolution (looks to be the case?) or if the imported sprites are somehow at fault. Any help would be greatly appreciated! :)
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 07 Jul 2015, 15:52
@xil there is that silly check "Is the game Hi-Res or Low-Res". For backwards-compatibility purposes I let it work this way:
* 320x240 and lower are counted "low-res";
* anything higher than 320x240 is counted hi-res.

This condition affects limited situations, but one of them is Sprite's "Resolution" property, which causes the sprite to automatically scale up and down if the resolution does not match the game's one.
I guess the sprites you imported has this property set to "Low Res".
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: xil on 07 Jul 2015, 17:17
Thanks for the quick reply. The sprite setting did indeed fix the resolution clash, but it fixed it in the opposite way I was expecting.

It turns out I was happy with the size of the sprite, it was the font size on the GUI that was the issue.

I've done an example of the button with the mouse pointer.
 - On the left the sprites are set to high res and as you can see they match the resolution of the background and of the font put directly via photoshop onto the background.
 - The right side shows the GUI where the mouse over and mouse pointer clicked sprites set to low res so they match with the font on the GUI.

x1 x2 x4 x8


So it seems switch from low-res to high-res sets the font to exactly double the resolution it should be. I've even tested it taking it down to 4pt (from it's correct 8pt size) and it works.

Should I just cut the font size in half or is this possibly a bug after all? It might just be quirk of working with such small bitmap fonts in 'high-res' perhaps?
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 07 Jul 2015, 17:41
Right, I knew that, the fonts have this check too... I apologize, I forgot where it is located.

You need to go to General Settings and find option: "Text Output" => "Fonts designed for 640x480" and set it to true. This will stop AGS from scaling fonts up in hi-res games.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: xil on 07 Jul 2015, 18:00
No need to apologise! :)

That's worked perfectly, thanks for the help.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: ollj on 10 Jul 2015, 15:36
this was harder to find than it should be.

i would like to see the 30000k sprite limit to be gone:

made a loop that, for testing purposes, does this.dynamicarraypointer.create on a 40000 long array of DynamicSprite* pointers.
it has the strange side effect that on a completely different point an object-pointer becomes "invalid", unable to do anything with an instance of an object.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: cianty on 11 Jul 2015, 14:09
In this new version when I hit Run (with or without Debugger) it always opens in the same way (large window).

In previous versions of the editor, the run game would use the settings previously made via "Run game setup...".
Since I am having severe difficulties with any view mode larger than 2x filter under virtual windows (as described here (http://www.adventuregamestudio.co.uk/forums/index.php?topic=52390.0)) this is extremely annoying, as it takes me about 5 minutes (no kidding) to close the window.
Is it possible to retain the settings for the Run game action?

The Mouse.Click() function is super useful by the way. In my efforts to get around the poor mouse input processing in virtual Windows I made a control mode where you move the cursor with arrow keys and use enter to trigger the MoudeDown event.

Anyhow, awesome work, guys!
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 11 Jul 2015, 14:15
In this new version when I hit Run (with or without Debugger) it always opens in the same way (large window).
<...>
Is it possible to retain the settings for the Run game action?
This problem was introduced with the new game building code (Multiplatform build version, 3.4.0.2)
The reason is simply that the game config is saved and read differently depending on how you run the game, and when debugging (F5) your config is lost, making the game run with default settings (max window).
You may temporarily workaround this by checking "Use legacy compiler" in the Editor's Preferences.

We must fix this for the next patch.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: cianty on 11 Jul 2015, 14:57
Thank you for the Legacy compiler hint - that did the trick.

Does this mean the Editor Preference "Test game style": "Use game setup configuration" does nothing now?
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 11 Jul 2015, 15:09
Does this mean the Editor Preference "Test game style": "Use game setup configuration" does nothing now?
It should, it just works incorrectly with new game compiler.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: monkey0506 on 11 Jul 2015, 18:10
The Linux engines seem to be out of date in this version (3.4.0.5). Were they rebuilt for this release? If they are going to be included then they will need rebuilding for each release. Should we perhaps maintain their release separately?


Edit: I didn't create the archive for this purpose (actually, I'm having some issues with my VM talking to the host), but here are the latest 3.4.0.* Linux binaries (https://drive.google.com/file/d/0B13dWpIY47QpbW1jY3BlRHpXcmM/view?usp=sharing) (versioned as 3.4.0.5, but includes updates since that release). This also includes the AGSteam binaries, which of course aren't necessary, but like I said I needed this for something else. ;) This archive can be extracted directly on top of "Editor/Linux" to update the Linux binaries used by the new compiler.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Armageddon on 12 Jul 2015, 02:37
Not sure if this has been reported yet, sorry if it has.

In the setup dialog the resolution doesn't match the game.

(https://dl.dropboxusercontent.com/u/5479044/Obfuscate/resolutionhuh.png)

Also the mouse sensitivity in windowed mode got messed up when I switched to custom resolution. With the resolution dialog saying that I'm kind of worried that the mouse position is being stretched down from 320x200 to 320x180 and that's what's causing it to whip around so fast.

EDIT:

Fixed the conflicting resolution numbers, had to manually change it in acsetup.cfg, doesn't do it for you when you compile or run the game though. Doesn't fix the mouse acceleration. What I did find though is that if I run the game .exe by itself there's no acceleration. If I use winsetup .exe and close it with save and run, then it has the acceleration. Very strange.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: ollj on 17 Jul 2015, 17:19
v3.5.0.5 gives a pretty confusing error message on;

import int[] testfunction();

//---

int[] testfunction(){
  int Array[];
  Array=new int[2];
  return Array;
}

and the message is that it can not convert a dynamic array in a dynamic array of the same type.


-----

i have not figured out if there is any fast way to get the length of a dynamic array.
so far i always add ine integer, always being set to the array length of another dynamic array of the same struct. this i not too efficient.

-----

i have not figured out if there is any way to give any type of dynamic aray to any type of function as a function parameter. i assume there is none, except for having a dynamic array in the struct to directly paste to and have the function read this.DynamicArrayParameter from

-----


and i really want dynamic arrays to be able to be put inside of managed structs.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 17 Jul 2015, 17:34
v3.5.0.5 gives a pretty confusing error message on;

import int[] testfunction();

//---

int[] testfunction(){
  int Array[];
  Array=new int[2];
  return Array;
}

and the message is that it can not convert a dynamic array in a dynamic array of the same type.

I do not get any errors from this script. Does the error message reference the line inside this function?
Could you show how you use this function? (and copy the actual error message text?)

-----

i have not figured out if there is any fast way to get the length of a dynamic array.
There is no way to do this in AGS script now, except for storing additional variable with length value.

i have not figured out if there is any way to give any type of dynamic aray to any type of function as a function parameter.

Like this:
Code: Adventure Game Studio
  1. import void try_this(int a[]);
  2. ------------------------------
  3. void try_this(int a[])
  4. {
  5.   a[0] = 1;
  6. }
  7. ------------------------------
  8. void test()
  9. {
  10.   int a[] = new int[10];
  11.   try_this(a);
  12.   Display("%d", a[0]);
  13. }
  14.  


and i really want dynamic arrays to be able to be put inside of managed structs.
This is in development plans for the future version.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Khris on 21 Jul 2015, 13:54
I just tried to run a game on Linux and got this:
Quote
AGS: Requested engine version: 3.4.0.5
This game requires a newer version of AGS (3.4.0.5). It cannot be run.Invalid file format. The file may be corrupt, or from a different version of AGS.
This engine can only run games made with AGS 2.5 or later.

(I also had to set the execute permissions manually.)
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 21 Jul 2015, 14:08
I just tried to run a game on Linux and got this:
Quote
AGS: Requested engine version: 3.4.0.5
This game requires a newer version of AGS (3.4.0.5). It cannot be run.Invalid file format. The file may be corrupt, or from a different version of AGS.
This engine can only run games made with AGS 2.5 or later.

(I also had to set the execute permissions manually.)

I forgot to update linux binaries again. :(
Try the ones made by monkey0506: http://www.adventuregamestudio.co.uk/forums/index.php?topic=51050.msg636517051#msg636517051
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Khris on 21 Jul 2015, 14:37
Thanks, that did it!
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: ollj on 27 Jul 2015, 17:04
Code: Adventure Game Studio
  1. //this is mostly resolved, and only about a confusing compiler error message...
  2. //...on returning an array of a managed struct from a (static) function:...
  3. //"Can not convert 'DynamicSprite[]' to 'DynamicSprite[]'  "
  4. //...and like many compiler errors, this is not only confusingly fuzzy, ...
  5. //...but this one is a straight out nonsensical logic response to throw at anyone.
  6.  
  7. //this requires AGS version 3.4.0.3 (alpha 3) or higher (due to dynamc arrays)
  8.  
  9. //as an example i have this function that produces the error...
  10. //...this static function wants to merge 2 arrays of DynamicSprite[] (as part of a struct for such functions):
  11.  
  12. struct ArrDyn{};// a struct-set to group static array-functions for DynamicSprite*[] into.
  13.  
  14. ///Returns DynamicSprite*[0..LengthLeft+LengthRight] of LeftSmall[0..LengthLeft] having RightLarge[0..LengthRight] merged to its right, changing all #indizies of RightLarge[#] to #+=LengthLeft.
  15. import DynamicSprite*[] Merge2Dyn(static ArrDyn, DynamicSprite *LeftSmall[], DynamicSprite* RightLarge[], int LengthLeft=1,  int LengthRight=1);
  16.  
  17. //end of header // start of body//
  18. //end of header // start of body//
  19.  
  20.  
  21. DynamicSprite[] Merge2Dyn(static ArrDyn, DynamicSprite *LeftSmall[], DynamicSprite *RightLarge[],
  22.                                               int LengthLeft,             int LengthRight){
  23.   DynamicSprite *r[];//set merged array for return value.
  24.   r=new DynamicSprite[LengthLeft+LengthRight];
  25.   while(LengthRight){//copy LeftSmall[] to r[]
  26.     LengthRight--;
  27.     r[LengthLeft+LengthRight]=LeftSmall[LengthRight];
  28.   }
  29.   while(LengthLeft){//copy RightLarge[] to r[]
  30.     LengthLeft--;
  31.     r[LengthLeft]=LeftSmall[LengthLeft];
  32.   }
  33. return r;}//on the return call the compiler cries:
  34. //Can not convert 'DynamicSprite[]' to 'DynamicSprite[]'  //--tehehe
  35.  
  36. //i reported this before. but my example was flawed, possibly by not using a MANAGED struct array in my previous example.
  37. //i think it makes a difference if its a managed struct, like DynamicSprite, or a (non-managd) struct.
  38. //the compiler is however fine with this correct example, only replacing:...
  39. //DynamicSprite[] Merge2Dyn
  40. //...with...
  41. //DynamicSprite*[] Merge2Dyn
  42. //...which is possibly unneccessarily confusing in your script syntax to even make an explicit  difference here.
  43.  
  44. DynamicSprite*[] Merge2Dyn(static ArrDyn, DynamicSprite *LeftSmall[], DynamicSprite *RightLarge[],
  45.                                               int LengthLeft,             int LengthRight){
  46.   DynamicSprite *r[];//set merged array for return value.
  47.   r=new DynamicSprite[LengthLeft+LengthRight];
  48.   while(LengthRight){//copy LeftSmall[] to r[]
  49.     LengthRight--;
  50.     r[LengthLeft+LengthRight]=LeftSmall[LengthRight];
  51.   }
  52.   while(LengthLeft){//copy RightLarge[] to r[]
  53.     LengthLeft--;
  54.     r[LengthLeft]=LeftSmall[LengthLeft];
  55.   }
  56. return r;}
  57.  
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Gurok on 27 Jul 2015, 17:13
It seems like you worked out that the return type had to be DynamicSprite *[]. Was that entire post just to say that the error message was confusing or did I miss the point? I'm confused by your post, to be honest.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 27 Jul 2015, 17:16
Ollj, I took a responsibility and added code formatting to your post, because you posted both comments and script as a plain text, making it pretty difficult to read.

Please, when you post code samples, use [ code=ags ] [ /code ] tags to make them stand-out.


From what you say I understood that:
1. You actually solved the problem you were having(?).

2. AGS compiler produces confusing error message on trying to return DynamicSprite *r[] as DynamicSprite[] (it names both types as "DynamicSprite[]".
This is indeed a mistake, which I will add to our bug tracker.

3. AGS syntax on declaring array of managed pointers is confusing. Possibly that is because you create the array as
Code: Adventure Game Studio
  1. new DynamicSprite[N]
  2.  
and not as
Code: Adventure Game Studio
  1. new DynamicSprite*[N]
  2.  
Which I have to agree. But that is a legacy issue that is many years old, and I doubt it will change in nearest future (not to break compatibility with existing scripts).
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 28 Jul 2015, 07:49
NOTE: I want to split this thread to make it easier for forum users to see new alpha releases.
Will try to do this later today.
NOTE2: this package does not have "Linux" binaries at the moment. I will update the package with them included a bit later.


AGS 3.4.0.6 (Alpha) - Builder Patch

ZIP-archive:
http://www.mediafire.com/download/8xw5wv5bs95jrie/AGS_3.4.0.6-Alpha-BuilderPatch.zip

Debug symbols (for developers):
http://www.mediafire.com/download/jwu9jg3hm0bwlmo/PDB_3_4_0_6.zip


This update is mainly dedicated to fixing most annoying bugs and oversights related to new game compilation, as well as custom resolutions.
Includes all content from 3.3.4 (http://www.adventuregamestudio.co.uk/forums/index.php?topic=52398.0).


Changes since 3.4.0.5:

Editor
Improvements
* Better descriptions of Resolution property values for Sprite and Room.

Bug Fixes
* Fixed sprite, font and room background size issues occuring if the game native resolution had one parameter higher and another smaller than 320x240 (e.g. 400x200).
* Fixed graphics renderer selection in config was reset to default game's property every time the game was recompiled.
* Fixed game configs were not updated with the new game builder when game native resolution, color depth and title were modified.
* Fixed Debugging game did not use proper configuration with the new game builder.
* Fixed custom icon was not integrated into the compiled game.


Scripting
Improvements
* Added support for "switch" statement. Strings and other variable types are allowed to be checked in switch condition.
Standard case statement features like fallthrough and break are also supported.

Example:
Spoiler: ShowHide
Code: Adventure Game Studio
  1. String x = "a";
  2.  
  3. switch(x)
  4. {
  5. case "a":
  6.     Display("X is A");
  7. case "b": // fall-through
  8.     Display("X is B");
  9.     break;
  10. case "c":
  11.     Display("X is C");
  12. case "d": // fall-through
  13. default: // fall-through
  14.     Display("X is D");
  15. }
  16.  


Bug Fixes
* Fixed compiler crash related to using global variables in "for" loop header.
* Fixed incorrect compiler parsing of a static function call inside array index brackets.
E.g:
Code: Adventure Game Studio
  1. int i = array[Game.GetColorFromRGB(0, 0, 0)]; // there was parse error after '['
  2.  


Engine
Improvements
* Engine ignores "match_device_ratio" config parameter and never tries to match device aspect ratio when initializing display mode, if the latter is defined explicitly ("screen_def=explicit" in the config file).


WinSetup
Improvements
* Added an option to choose full-screen resolution based on scaling filter.

(http://i.imgur.com/tMqz8q4.png)

"Bind to game scaling" means that engine should try choosing display mode equal to scaled game's size.
"Bind to game scaling (force desktop ratio" means that engine will look into first display mode equal or higher than scaled game's size, that has same aspect ratio as your current desktop resolution.

Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: cat on 28 Jul 2015, 09:02
* Fixed custom icon was not integrated into the compiled game.
Awesome, thanks!

"Bind to game scaling" means that engine should try choosing display mode equal to scaled game's size.
"Bind to game scaling (force desktop ratio" means that engine will look into first display mode equal or higher than scaled game's size, that has same aspect ratio as your current desktop resolution.
I don't really understand what this means and I don't think the average player will know. The setup is much smaller and less complicated now compared to previous versions. However, I think it's still too difficult to understand for most players.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 28 Jul 2015, 09:11
"Bind to game scaling" means that engine should try choosing display mode equal to scaled game's size.
"Bind to game scaling (force desktop ratio" means that engine will look into first display mode equal or higher than scaled game's size, that has same aspect ratio as your current desktop resolution.
I don't really understand what this means and I don't think the average player will know. The setup is much smaller and less complicated now compared to previous versions. However, I think it's still too difficult to understand for most players.
This means that display resolution will be equal to (game size X scaling), and you do not have to choose precise resolution, just choose filter and scaling value.
I am open for suggestions to how improve this or name it in a more clear way. I felt I had to add this in last minute to provide all variety of choices in setup dialog.

E: Actually, I think I will have to change the setup window again on later stages.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: proximity on 28 Jul 2015, 15:58
I think i got it :

Bind to game scaling : if desktop res. is 1920*1080 and scaled game size is 1440*900, the engine set the resolution to 1440*900, as it is already available resolution for the graphic card.
Bind to game scaling (force desktop ratio) : if desktop ratio is 16:9 and the scaled game ratio is 16:10, the engine set the ratio to 16:9.

Do i understand correctly ? :)
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: Crimson Wizard on 28 Jul 2015, 16:24
I think i got it :

Bind to game scaling : if desktop res. is 1920*1080 and scaled game size is 1440*900, the engine set the resolution to 1440*900, as it is already available resolution for the graphic card.
Bind to game scaling (force desktop ratio) : if desktop ratio is 16:9 and the scaled game ratio is 16:10, the engine set the ratio to 16:9.

Do i understand correctly ? :)

Yes, this works like that.
Actually, this is a return of old way to select resolution we still have in 3.3, just with tad more variety.

I am seriously considering on overhauling the setup once again when the 3.4 will be closer to final stage, because I realized user have to set too many things there. It might be done easier.
Title: Re: AGS 3.4.0.5 (Alpha) - June Patch
Post by: cat on 29 Jul 2015, 21:40
Ok, tried the newest alpha. The user.ico is working now, so thanks for that!
Interestingly the setup also uses the game icon in the Windows taskbar but the setup icon in Windows Explorer ??? (but it doesn't really matter, I just noticed it.)

About the setup: We should probably think about the purpose of the setup. Should the average player even need to start this? Or is this mainly for troubleshooting?

The average player will need to:
- Change the language
- Choose windowed vs. fullscreen mode
- If windowed mode, choose a resolution

What do those filters do? What is the difference between setting a different resolution and using scaling? Is it not possible to determine this automatically?
Currently, there are too many options that also seem to somehow exclude each other. If possible, I'd simplify the options even more and move all the complex stuff to advanced. This shall then only be used for troubleshooting.

Also, what is the purpose of the Save button (I know it has been there for ages, but who changes the config and does not try if it works)? I'd remove that. I think everyone will just use Save&Run. This could then also be renamed to "Start game".
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 30 Jul 2015, 21:07
What do those filters do? What is the difference between setting a different resolution and using scaling? Is it not possible to determine this automatically?
Currently, there are too many options that also seem to somehow exclude each other. If possible, I'd simplify the options even more and move all the complex stuff to advanced. This shall then only be used for troubleshooting.

These options do not really exclude each other, for they could be used in combinations; rather they are excessive, and only limited combinations are useful in a common situation.

It seems to me that there could be two paths to choose a display mode:
1) If I want to use particular resolution, then I would usually like to have maximal scaling for that resolution;
2) If I want to use particular scaling (x2, x3, etc), I would usually like to have window size just enough for the scaled game to fit.

Therefore, I may suggest to modify setup following way:
- Add a big switch which would define a method of selection: [ Choose Resolution / Choose Scaling / Expert ]
(the "Expert" word should probably scare away users who are unsure of themselves :)).
- When "Choose resolution" is pushed, user can set Resolution (window size) and Filter, but not filter scaling factor - for it always will be "Max possible".
- When "Choose scaling" is pushed, user can set Filter and Scaling factor, and resolution will be determined by them.
- "Expert" will enable all options simultaneosly, as they are now; this possibility will be meant for some extraordinary cases.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: cat on 30 Jul 2015, 21:27
Sounds good!
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 13 Aug 2015, 04:29
Hello again :)

I'm having trouble with idle view. No matter what i do, idle view still plays at 5 animation delay i think. I set every animation delay options in the editor to zero. I get good result in the view editor but in the game, it plays very slow. Is its delay 5 by default and can't be changed ?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 13 Aug 2015, 16:16
Hello again :)

I'm having trouble with idle view. No matter what i do, idle view still plays at 5 animation delay i think. I set every animation delay options in the editor to zero. I get good result in the view editor but in the game, it plays very slow. Is its delay 5 by default and can't be changed ?

Is this problem specific to version 3.4.0? Thing is, this thread purpose is for discussing new features and/or problems arising in new version. Did you try searching/asking at the tech forums?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 13 Aug 2015, 19:14
Hello again :)

I'm having trouble with idle view. No matter what i do, idle view still plays at 5 animation delay i think. I set every animation delay options in the editor to zero. I get good result in the view editor but in the game, it plays very slow. Is its delay 5 by default and can't be changed ?

Is this problem specific to version 3.4.0? Thing is, this thread purpose is for discussing new features and/or problems arising in new version. Did you try searching/asking at the tech forums?

Yes, i've tried it on 3.4.0.6 builder patch. I've searched tech forums related to that but i've found only complaints about idle view plays during dialogs or unwanted situations etc. If default idle view animation delay is 5 and can't be changed, i have to remove all idle views from the game. Would you try it yourself and share your opinion ?

Edit : I can send you my idle view sprites if you like for better testing.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 13 Aug 2015, 19:43
I searched on forums for "idle speed", and found this:
http://www.adventuregamestudio.co.uk/forums/index.php?topic=36779
I guess delay 5 is hard-coded after all.

EDIT:
I found and updated a ticket in the old suggestion tracker: http://www.adventuregamestudio.co.uk/forums/index.php?issue=139.0
I guess we will be able to fix this in 3.3.5 (and then copy changes to next 3.4 update).
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 13 Aug 2015, 22:57
Thanks Crimson. I guess i will have to wait till next update before going further with idle views.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: ollj on 19 Aug 2015, 20:22
import void example(int ihaveaproblemwiththisarbituaraylimit=32000);

the limit here is 32000, totally dumb limit, not even a power of 2.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 19 Aug 2015, 20:34
import void example(int ihaveaproblemwiththisarbituaraylimit=32000);

the limit here is 32000, totally dumb limit, not even a power of 2.

E: Okay, I searched for 32000 in the compiler code and found there is a limit of 32000 to the function argument default value. Should be 32-bit signed int max value instead.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: rmonic79 on 26 Aug 2015, 18:33
hi guys, we are trying to use wheel to scroll dialogue using customdialoggui(or better the simplified version in nine verbs template cause we had strange behaviour with full version) but the wheel choose answers instead of scroll it.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 26 Aug 2015, 18:38
hi guys, we are trying to use wheel to scroll dialogue using customdialoggui(or better the simplified version in nine verbs template cause we had strange behaviour with full version) but the wheel choose answers instead of scroll it.
Is this beavior different in 3.4.0 compared to previous versions (3.2, 3.3)?
Also, I am not sure what is "customdialoggui" and what is the difference between simplified and full version of nine verbs template. Maybe it is better to ask in the related module thread?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: rmonic79 on 26 Aug 2015, 19:04
Yes, it works fine with 3.2, 3.3
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 26 Aug 2015, 19:52
I think it might be a bug in 9 verb template. For 3.4 version they have these commands executed even for mouse wheel:
Code: Adventure Game Studio
  1. info.Update();  // <--- this redraws dialog options
  2. info.RunActiveOption(); // <--- this runs selected dialog topic
  3.  


I would suggest to do this instead:
Code: Adventure Game Studio
  1. info.Update();
  2. if (button != eMouseWheelNorth && button != eMouseWheelSouth)
  3.     info.RunActiveOption();
  4.  
However, I do not know how this template works now, maybe there are other things that needs correction. It is better talk to template creator about this.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: abstauber on 27 Aug 2015, 08:13
In dialogscript.asc go to line 708 and do this change.

old
Code: Adventure Game Studio
  1.   info.RunActiveOption();
  2.  
new
Code: Adventure Game Studio
  1.   if (button != eMouseWheelSouth && button != eMouseWheelNorth) info.RunActiveOption();
  2.  

edit: hehe I just realized that it's exactly what CW suggested - anyway you now have the line number ;)
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: rmonic79 on 27 Aug 2015, 09:46
thanks! Now works fine ;)
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: on 31 Aug 2015, 17:01
(http://4.bp.blogspot.com/-bf699CBMMbk/UoAiRgLglQI/AAAAAAAAB9o/-mZDqDlaHdw/s1600/palmas-aplausos.gif)
For the work all of you are doing.

There is a date for the release?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 31 Aug 2015, 19:10
:).

Regarding release, after Nick Sonneveld set up an automatic build server, and also started to introduce automatic tests, we are discussing to move to a faster release rate (a finalized public release after every big change). With this in mind, there is a number of minor problems to fix, after which we may start a more official "beta test".

I pretty well know that people will worry about other stuff I promised to add (I made too many promises I could not keep in past years :/). But we will start working on these right when we have free time, which may be in parallel with beta test process.


Lastly, I was not mentioning this until now, but I made an agreement with the management in the company I work to switch to half-time schedule roughly in the end of September, which will give me extra time to work on AGS.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 31 Aug 2015, 21:41
:).

Regarding release, after Nick Sonneveld set up an automatic build server, and also started to introduce automatic tests, we are discussing to move to a faster release rate (a finalized public release after every big change). With this in mind, there is a number of minor problems to fix, after which we may start a more official "beta test".

I pretty well know that people will worry about other stuff I promised to add (I made too many promises I could not keep in past years :/). But we will start working on these right when we have free time, which may be in parallel with beta test process.


Lastly, I was not mentioning this until now, but I made an agreement with the management in the company I work to switch to half-time schedule roughly in the end of September, which will give me extra time to work on AGS.

That's good news Crimson. Also i'm curious about something. Weren't you in the makers of Journey Down games or i just remember wrong ? I'm asking that because you should already have made money from it :smiley: Why do you still have to work ? :smiley:

By the way, i'm proceeding my game with the latest version (3.4.0.6 now) of alpha. Resolution : 1920*1080, 32-bit (big) alpha sprites. I will continue to give feedback as i proceed, especially about visual issues.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 31 Aug 2015, 22:29
That's good news Crimson. Also i'm curious about something. Weren't you in the makers of Journey Down games or i just remember wrong ?
No, not at all, I was beta testing the low-resolution version back when it was made with AGS, that's probably why I am mentioned in the credits.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Snarky on 01 Sep 2015, 08:11
That's good news for us, CW! Hope you enjoy the new work-work balance. :P

Proximity, if you think a commercial game release means guaranteed instant retirement, you have another think coming. (laugh)
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: on 01 Sep 2015, 21:23
Good news ;-D

I`m very interested in this ide (engine) to develop my(s) game(s). Even over Adventure Creator (Unity) or Visionaire Studio (after the release or the new version of AGS this engines have no reason for being)

(Sorry for my english "es un poco pobre" XD)
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: on 02 Sep 2015, 22:24
Sorry if i'm some heavy.
Will be a Linux version (.dev)?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 03 Sep 2015, 09:21
Sorry if i'm some heavy.
Will be a Linux version (.dev)?
Linux is supported for a long time now (minus some issues):
Source repository is here: https://github.com/adventuregamestudio/ags

If you mean having Editor building Linux version itself, this option is supported, but I did not add Linux component to the latest release (3.4.0.6). I will add it when I have time.
Of course it will be part of final release.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: on 03 Sep 2015, 17:07
Yes, i mean have the executable file (like Blender). Always i try compile it show this message:

AGS: Adventure Game Studio v3.3 Interpreter
Copyright (c) 1999-2011 Chris Jones and 2011-2015 others
ACI version 3.3.4.2

AGS: *** ENGINE STARTUP ***
AGS: Reading config file
AGS: Initializing allegro
AGS: Setting up window
AGS: Initializing game data
AGS: Game data file could not be found

ERROR: Unable to find game data files

Usage: ags [OPTIONS] [GAMEFILE or DIRECTORY]

Options:
  --windowed                   Force display mode to windowed
  --fullscreen                 Force display mode to fullscreen
  --hicolor                    Downmix 32bit colors to 16bit
  --letterbox                  Enable letterbox mode
  --gfxfilter <filter>         Enable graphics filter. Available options:
                                 StdScale2, StdScale3, StdScale4, Hq2x or Hq3x
  --log                        Enable program output to the log file
  --no-log                     Disable program output to the log file,
                                 overriding configuration file setting
  --help                       Print this help message

Gamefile options:
  /dir/path/game/              Launch the game in specified directory
  /dir/path/game/penguin.exe   Launch penguin.exe
  [nothing]                    Launch the game in the current directory
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 03 Sep 2015, 17:11
Yes, i mean have the executable file (like Blender). Always i try compile it show this message:
This message means that it cannot find the game file. Do you have one, and where is it located? Which command line arguments do you use?

Currently AGS does not merge game data to executable for Linux. You need to have at least two files: compiled engine (from the sources I linked to) and game file (your own game, or anyone elses).
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: on 03 Sep 2015, 19:12
I thought it works like windows, double click and go to the ide to develop my game.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 03 Sep 2015, 19:16
I thought it works like windows, double click and go to the ide to develop my game.
Ooooh, you mean IDE version for Linux? Sorry, I thought you were speaking about running games on Linux.
No, we do not have Linux version of the Editor, and plans are rather uncertain right now.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: on 03 Sep 2015, 19:50
Ooooh, you mean IDE version for Linux? Sorry, I thought you were speaking about running games on Linux.
No, we do not have Linux version of the Editor, and plans are rather uncertain right now.

This is bad news. I think to do more popular the ide must be cross-plataform.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 03 Sep 2015, 20:33
This is bad news. I think to do more popular the ide must be cross-plataform.
There are simply not enough developers ready to work on this right now.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: on 04 Sep 2015, 10:03
There are simply not enough developers ready to work on this right now.

I have some ideas inspired in Blender Fundation:
What if do you a crowdfunding (about 1500€)?
Record some tutorial series and sell it by 15€?
Do a game and the collection allocate to develop more versions
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 04 Sep 2015, 10:22
There are simply not enough developers ready to work on this right now.

I have some ideas inspired in Blender Fundation:
What if do you a crowdfunding (about 1500€)?
Record some tutorial series and sell it by 15€?
Do a game and the collection allocate to develop more versions

Neo_One, this idea was already mentioned several times, but with zero result. Personally, I have no will to participate in this at the moment. If you want to suggest some plan, please make a dedicated forum thread.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 04 Sep 2015, 22:35
There is a serious problem with templates in 3.4.0.6. When you create a template successfully and start a new game with it, there is an error like this :

(http://i57.tinypic.com/2ihow8n.jpg)

I realized it when i created backup templates for my game. In the general settings pane, i checked "Compress sprite files". I don't know if this is the cause of error.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: cat on 07 Sep 2015, 22:22
I made my OROW game with AGS 3.4.0.6 and found a few issues. I'll post them here now.
If needed, I can create tracker issues later, but I'd like to know if these are real issues at all.


Additionally, player reported problems with the graphic setup. The graphics are quite large (1280x720) and I was using Run-in-window, nearest-neighbour and Max-fit as default setting. I tried it on 3 different PCs and it was working fine on each of them, but players with older PCs and/or smaller monitors had problems. I try to get more info about this and what settings helped to solve the problem.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Monsieur OUXX on 09 Sep 2015, 10:23
Ooooh, you mean IDE version for Linux? Sorry, I thought you were speaking about running games on Linux.
No, we do not have Linux version of the Editor, and plans are rather uncertain right now.

This is bad news. I think to do more popular the ide must be cross-plataform.
It was working in Wine and other emulators if I remember correctly some forums posts were dealing with that.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Sslaxx on 18 Sep 2015, 20:21
My ISP likes to block Mediafire at random. Is there anywhere else you could supply the alphas/betas/RCs to download?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 19 Sep 2015, 16:54
My ISP likes to block Mediafire at random. Is there anywhere else you could supply the alphas/betas/RCs to download?

I suppose we will use a better location when all build server issues are solved.
Meanwhile, will Dropbox work for you?
https://www.dropbox.com/s/g9aizr0db1c9b2z/AGS_3.4.0.6-Alpha-BuilderPatch.zip?dl=0
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Sslaxx on 19 Sep 2015, 21:51
Thanks, Crimson!
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: monkey0506 on 20 Sep 2015, 06:58
Presumably we would only need the latest stable and development builds for download? Bitbucket.org associates a "Downloads" page with git repos (gives you a place to host the binaries without versioning them).
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: ollj on 20 Sep 2015, 15:11
3.4.0.5 alternative link
https://mega.nz/#!IxFxACIB!swM-2H1hqE5PaD1yzXG4CLRndGvRPo0fr-CorLw-PmE
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: on 25 Sep 2015, 13:44
Will be Mac (OSx) export option in "Builds targets plattaforms"?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 25 Sep 2015, 13:49
Will be Mac (OSx) export option in "Builds targets plattaforms"?
We do not have a proper Mac port yet.
When it will be available, we will add one too.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 03 Oct 2015, 13:48
I splitted out a discussion related to the blocked help file, because it is not directly related to 3.4.0 alpha:
http://www.adventuregamestudio.co.uk/forums/index.php?topic=52724.0
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 14 Nov 2015, 02:38
I'm having difficulties when rendering sprites with semi-transparent alpha (like a character has shadow under him). Character movement and scaling is slower than non-transparent sprites (characters with no shadow). They are all PNG format so i wonder what causes this. The game engine ? The graphic card or CPU performance ? May be Direct X 9.0 ?

My system is : AMD FX 8120 3.1 GHZ, Geforce 640 GT, 24 GB Ram, Windows 7 64 bit, DirectX 11. AGS 3.4.0.6 Builder Patch and game resolution 960*540.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: rmonic79 on 22 Nov 2015, 11:52
We are trying character.setlightlevel and it's fantastic to give continuous changing of light to different character. Only one problem after call it, region light level doesn't work anymore. Any solution?
Thanks
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 26 Nov 2015, 15:18
We are trying character.setlightlevel and it's fantastic to give continuous changing of light to different character. Only one problem after call it, region light level doesn't work anymore. Any solution?
Thanks
Do you mean that you want region light and "personal" character light levels combine?
The current logic in AGS is that character light and tint settings override region ones.
From the top of my head, the only solution I see is to summ them manually when you apply character level.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: rmonic79 on 27 Nov 2015, 09:30
Thanks for reply crimson,i don't want to combine them but i didn't find a way to unsetlightlevel and use region again. (to tell rhe truth i don't need it anymore cause we find a better solution using characters light level but, just for curiosity)
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 27 Nov 2015, 14:03
Thanks for reply crimson,i don't want to combine them but i didn't find a way to unsetlightlevel and use region again. (to tell rhe truth i don't need it anymore cause we find a better solution using characters light level but, just for curiosity)
Oh, this may be done using Character.RemoveTint().
Looks like an oversight from my part to not explain this anywhere.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: ollj on 07 Dec 2015, 12:04
if i would be able to set integers in hexaecimal, that would be good.

Code: Adventure Game Studio
  1. //if you ever wanted to set...
  2. //int  i=-2147483648;
  3. //this function tells you what AGS does inconveniently wrong in that case:
  4.  
  5. function on_mouse_click(MouseButton button){
  6.   //32_bit_signed_int.range==[-2147483648 .. 2147483647]
  7.   //the ags tutorial explicitly says so. you can find it by searchinf gor these numbers.
  8.   //but "-2147483648" has artificial restrictions tht are just silly!
  9.   #define MAX_POS32  2147483647//holds true, and AGS caps int at int>2147483647 //ocrrect  user friendly capping
  10.   #define MAX_NEG32 -2147483648//holds true, BUT AGS caps int at int<2147483647 //error    user friendly capping gone bad
  11.   //                                               AGG should cap  i at i<2147483648 //expected user friendly capping
  12.                                                        int a=  2147483648;//==2^31
  13.   Display("For your convenience...[I wont let you      set a=  2147483648; because thats 2^31 and that would carry into the sign bit [Therefore I kindly set a=  %d; It is Super Effective!",a);
  14.   //i think i am okay with this.
  15.                                                     int b= -2147483648;//SADLY this sets i=-2147483647 (capped)
  16.   Display("I'm afraid...          [I wont't let you set b= -2147483648; even though -2^31 is valid for the range of a signed_32_bit_int[          I kindly set b= %d; for your own inconvenience. And i just[           pretend that -2147483648 does not exist, even though it does. Die![Just for you dave! ",b);
  17.   //okay fine, be that way! i have my one ace:
  18.   int c=1073741824<<1;//==(2^30)<<1  //only by bitwise shifting i can set c=-2147483648;
  19.   Display ("You defeated me this tine.[you set c= -2147483648 ==[==           %d[by setting c=1073741824<<1;//c=2^30<<1",c);
  20.   //WRONGLY it pretends that i=-2147483648 is not even an option! And this makes
  21.   //#define MAX_NEG32  -2147483648
  22.   //defines wrongly to -2147483647
  23.   //i really want to define a 32-bit sign bit="binary#10000000:000000000:00000000:00000000" for countless reasons.
  24.   //but it just wont let me!
  25.   //do i really need a global integer for that, set by shifting bitwise on game start.
  26.   //thats just inconvenient!
  27. }
  28.  
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 07 Dec 2015, 12:08
ollj, please use [ code=ags ] tag to mark the script examples.
I refuse to read anything written in font size that small...
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: abstauber on 09 Dec 2015, 12:48
I'm getting these random crashes when I try to run my game from the editor.
(http://i.imgur.com/cfDIile.png)
Hitting run again and the problem is gone.
Is there a way to provide more debug information for you? Unfortunately no crash dumps are generated when this happens.


Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 09 Dec 2015, 14:52
I'm getting these random crashes when I try to run my game from the editor.

Other people made this topic, and the issue seem similar: http://www.adventuregamestudio.co.uk/forums/index.php?topic=52811.0
Unfortunately I am now busy finishing AGS 3.3.5, but when I'm done with that I will investigate.
Regarding details, did you change OS version, or installed any updates lately?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: abstauber on 09 Dec 2015, 15:09
Oh, this has already been reported? :-[
No worries, then - take your time, this isn't urgent at the moment.

And nope, no updates.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Monsieur OUXX on 11 Dec 2015, 17:21
I don't know if this was the case before, but in this version you cannot do :
Code: Adventure Game Studio
  1. String s=null;
  2. if (s=="")
  3. {
  4.    //do something
  5. }
  6.  

If you do that, the game stops with message "null pointer referenced" when trying to evaluate t=="".
I understand the underlying mechanism (there's probably an implicit something like s.GetValue() going on at some stage) but it doesn't feel right.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 11 Dec 2015, 17:47
I don't know if this was the case before, but in this version you cannot do :
Code: Adventure Game Studio
  1. String s=null;
  2. if (s=="")
  3. {
  4.    //do something
  5. }
  6.  

If you do that, the game stops with message "null pointer referenced" when trying to evaluate t=="".
I understand the underlying mechanism (there's probably an implicit something like s.GetValue() going on at some stage) but it doesn't feel right.


This was always like that because "==" operator between 2 strings was translated into "compare two strings".
It does not seem like there is any other reasonable effect of comparing a string reference and string literal. The operator cannot compare a pointer value and "", because "" is a valid string object (and null reference is not a valid object).
This is also why there is String.IsNullOrEmpty() function to be used instead of 's == ""'.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Blackthorne on 12 Dec 2015, 20:20
As far as dialogue scripting goes, it'd be nice to tie "DisplayTopBar" to characters.  Often with NPCs without a portrait in Sierra Style Games, I use this.
This may be related to custom speech style and/or individual speech style idea.
Can you make an issue in tracker?

So, I was programming a bit again today and it made me think of this again!  Would anyone else like this function - to be able to choose TopBar as a "Portrait Mode" for characters speech?  Often in games, when characters do not have a portrait, I like to use 'DisplayTopBar' so you can see the name of the character speaking, but it creates problems in tracking it with the Speech Center plugin.


Bt
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 12 Dec 2015, 20:42
As far as dialogue scripting goes, it'd be nice to tie "DisplayTopBar" to characters.  Often with NPCs without a portrait in Sierra Style Games, I use this.
This may be related to custom speech style and/or individual speech style idea.
Can you make an issue in tracker?

So, I was programming a bit again today and it made me think of this again!  Would anyone else like this function - to be able to choose TopBar as a "Portrait Mode" for characters speech?  Often in games, when characters do not have a portrait, I like to use 'DisplayTopBar' so you can see the name of the character speaking, but it creates problems in tracking it with the Speech Center plugin.


Bt

The reason why I mentioned issue tracker in the previous answer was that this thread is dedicated to discuss existing version (3.4.0 alpha), its problems and bugs.
It is very difficult to keep track of suggestions when they are posted in random threads like this without any order.
Could you please move this suggestion to issue tracker or separate forum thread?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 12 Dec 2015, 21:43
I'm having difficulties when rendering sprites with semi-transparent alpha (like a character has shadow under him). Character movement and scaling is slower than non-transparent sprites (characters with no shadow). They are all PNG format so i wonder what causes this. The game engine ? The graphic card or CPU performance ? May be Direct X 9.0 ?

My system is : AMD FX 8120 3.1 GHZ, Geforce 640 GT, 24 GB Ram, Windows 7 64 bit, DirectX 11. AGS 3.4.0.6 Builder Patch and game resolution 960*540.

Any ideas please ?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Scavenger on 12 Dec 2015, 22:11
I'm having difficulties when rendering sprites with semi-transparent alpha (like a character has shadow under him). Character movement and scaling is slower than non-transparent sprites (characters with no shadow). They are all PNG format so i wonder what causes this. The game engine ? The graphic card or CPU performance ? May be Direct X 9.0 ?

My system is : AMD FX 8120 3.1 GHZ, Geforce 640 GT, 24 GB Ram, Windows 7 64 bit, DirectX 11. AGS 3.4.0.6 Builder Patch and game resolution 960*540.

Any ideas please ?

Are you using DirectDraw or Direct3D? If I remember correctly, the D3D driver is faster at drawing alpha blended sprites, and the DD5 driver is better at raw image manipulation. If your setup says DirectDraw, change it, if it's D3D, then there's a problem.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 12 Dec 2015, 22:14
I'm having difficulties when rendering sprites with semi-transparent alpha (like a character has shadow under him). Character movement and scaling is slower than non-transparent sprites (characters with no shadow). They are all PNG format so i wonder what causes this. The game engine ? The graphic card or CPU performance ? May be Direct X 9.0 ?

My system is : AMD FX 8120 3.1 GHZ, Geforce 640 GT, 24 GB Ram, Windows 7 64 bit, DirectX 11. AGS 3.4.0.6 Builder Patch and game resolution 960*540.

First of all, image format is irrelevant, because when imported, all sprites become BMP.
Then, AGS still does many drawing operations on software level, and they never get accelerated (even not when Direct3D 9 is selected). Most notably it is when you draw something yourself (on DrawingSurface).
Could you describe what you do in more detail?

If I remember correctly, the D3D driver is faster at drawing alpha blended sprites, and the DD5 driver is better at raw image manipulation.
Regarding the latter, it is not much true for AGS, because in AGS D3D does not do any raw image manipulation at all. All raw bitmap changes are done in program code, D3D simply draws prepared sprites on screen. So D3D cannot become any worse than DD5.
IIRC, the only exception was "Fade out" effect which became slower in D3D mode for some reason.
Basically, in "Direct3D" mode, part of drawing is still done on "software" level (it is shared between two modes).


The true solution to this would be to move all image manipulation to hardware accelerated level, but this will require considerable changes to the engine.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 13 Dec 2015, 06:20
I'm using direct3d in the settings. About giving more detail, i'm having difficulties when rendering playable characters in the game, while walking up and down directions (character scaling). Each has soft shadows under her/him, and they look like they are jittering. You can look at the character here : http://www.adventuregamestudio.co.uk/forums/index.php?topic=42489.0  Also, you can look at the video on Greenlight page. See what's happening while they are walking.

I honestly supposed it is because of graphic card performance but i think i am wrong. I know there is no solution to this right now but i just wanted to know what causes this.

Note : "Adjust speed with scaling" option in the character pane isn't selected. If i select this option, jittering effect gets bigger.

I hear you say "why are you trying 3d images with 2d engine ?" :-D
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 13 Dec 2015, 13:49
I'm using direct3d in the settings. About giving more detail, i'm having difficulties when rendering playable characters in the game, while walking up and down directions (character scaling). Each has soft shadows under her/him, and they look like they are jittering. You can look at the character here : http://www.adventuregamestudio.co.uk/forums/index.php?topic=42489.0  Also, you can look at the video on Greenlight page. See what's happening while they are walking.

By details, I was primarily interested in knowing how exactly do you make these shadows. Are they separate object/character? Are they predrawn on character sprites, or drawn dynamically as character walks?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 13 Dec 2015, 20:37
I'm using direct3d in the settings. About giving more detail, i'm having difficulties when rendering playable characters in the game, while walking up and down directions (character scaling). Each has soft shadows under her/him, and they look like they are jittering. You can look at the character here : http://www.adventuregamestudio.co.uk/forums/index.php?topic=42489.0  Also, you can look at the video on Greenlight page. See what's happening while they are walking.

By details, I was primarily interested in knowing how exactly do you make these shadows. Are they separate object/character? Are they predrawn on character sprites, or drawn dynamically as character walks?

Ah sorry. Shadows are part of each sprite. They are not seperate. They are predrawn as the rest of the character.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: monkey0506 on 13 Dec 2015, 23:01
I'm not sure when this issue first started occurring (I have been busy with other things for some time and have been away from AGS), but Avast antivirus is apparently now blocking AGS executables on my system. I'm not sure if this is something only in my local settings, but I wanted to mention it.

Currently it seems Avast is attempting to open the EXE in a sandbox, but for some reason it seems to be failing to do so. I have to manually kill the Avast system service or three separate instances of the executable will hang indefinitely, with no window appearing.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: selmiak on 14 Dec 2015, 00:06
turn off avast deepscreen. I had the same problem ~1 month ago ;)
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: MiteWiseacreLives! on 14 Dec 2015, 02:01
I still have problems with Avast even with Deeps Screen off, I have to disable all file screening..
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 14 Dec 2015, 08:31
Ah sorry. Shadows are part of each sprite. They are not seperate. They are predrawn as the rest of the character.
I can not see any shadow jittering on video, probably I do not know what to pay attention to.
If this occurs when character is rescaled, then it could be that AGS does some software redrawing when creating cached images of scaled sprites, but I do not remember details at the moment. This needs more explicit tests and code investigation.

I'm not sure when this issue first started occurring (I have been busy with other things for some time and have been away from AGS), but Avast antivirus is apparently now blocking AGS executables on my system.
I still have problems with Avast even with Deeps Screen off, I have to disable all file screening..
Are we the ones who should be responsible for this, or Avast team is :undecided:? Have anyone tried asking their support/developers about why this may happen?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 14 Dec 2015, 09:34
selmiak is right. Avast deep screen does it all the time to NEW builded settings.exe and game.exe if there are none already. I didn't turn it off though, because it takes 3-5 seconds to complete.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Snarky on 14 Dec 2015, 09:40
I can not see any shadow jittering on video, probably I do not know what to pay attention to.

I can't see any jittering on the shadows either. The only problem I can see with the walk (nice models and animation, BTW!) is the "moonwalking" effect: the steps are faster than the character movement speed, so the feet look like they're sliding backwards over the ground.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 14 Dec 2015, 09:52
I can not see any shadow jittering on video, probably I do not know what to pay attention to.

I can't see any jittering on the shadows either. The only problem I can see with the walk (nice models and animation, BTW!) is the "moonwalking" effect: the steps are faster than the character movement speed, so the feet look like they're sliding backwards over the ground.

I guess i can't describe it. I should make a video which explains exactly what i try to tell. About moonwalking, current x-speed is 1 and raising it to 2 makes the character too fast. It may be good opportunity to ask for fine-tune character speed settings such as 1.3, 1.7 etc. :)

Thanks Snarky. I'm glad you like them.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 14 Dec 2015, 10:35
Ok. In the first video, the character has no shadow.

[embed=560,315]http://youtu.be/kTNHV-zXO9Y[/embed]

In the second video, the same character has shadow. It's a soft shadow so alpha transparency level is not the same everywhere. Some areas are darker,near to black and some areas are brighter.

[embed=560,315]http://youtu.be/50EtZ0OkHW4[/embed]

You see the difference ? In the second video, the character looks terrible. Vibrating, jittering, whatever you call it is much more noticable.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 14 Dec 2015, 10:49
You see the difference ? In the second video, the character looks terrible. Vibrating, jittering, whatever you call it is much more noticable.

Well, this is totally not what I was thinking about. It is even not about drawing speed, is it?
It looks like AGS has troubles defining sprite's position on screen.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Snarky on 14 Dec 2015, 11:27
I guess i can't describe it. I should make a video which explains exactly what i try to tell. About moonwalking, current x-speed is 1 and raising it to 2 makes the character too fast. It may be good opportunity to ask for fine-tune character speed settings such as 1.3, 1.7 etc. :)

Because AGS can only position characters on integer pixel positions, that would result in uneven movement speed. The best way to fix this in AGS is to adjust the number of frames in the walkcycle. (Fortunately this shouldn't be too difficult when you just have to reexport an animation from 3D.) Basically, you should measure the total stride length (usually about 0.8*height for realistic characters, but of course different in perspective), and divide that by the movement per frame to get the number of frames you need in the walkcycle.

Edit: Oh by the way, since Darth doesn't like critique on the GIP thread I'll take the opportunity here: that first video is too dark to see anything, as are several other clips in your pitch video. When you're trying to convey darkness, don't make things pitch black (unless that's the point) or just muddy dark all over: use contrast between dark regions and highlighted areas to convey overall darkness without making players squint. If you check out e.g. Gemini Rue or Blackwell Epiphany or The Journey Down you can see that good nighttime backgrounds aren't made just by banishing bright values.

You see the difference ? In the second video, the character looks terrible. Vibrating, jittering, whatever you call it is much more noticable.

Well, this is totally not what I was thinking about. It is even not about drawing speed, is it?
It looks like AGS has troubles defining sprite's position on screen.

I'm guessing this doesn't have anything to do with the shadow directly, but is a function of the dimensions of the sprite and the scaling. What I'm thinking is, again, that since AGS can only place sprites on integer pixel positions, when it smoothly scales down a sprite it has to round up the dimensions (so it doesn't cut off the edge). Then I'm guessing it takes that integer-sized sprite and centers it around the pivot. Depending on whether the scaled width is even or odd, it will effectively shift it a half-pixel left, and you get jittering.

It might be possible to fix this without completely redoing the basic AGS architecture by adding a special case for scaling character sprites centered on the pivot, where the scale sprite is always padded on the sides so the width is the same parity (odd or even) as the original size.

Edit: And the vertical jittering is probably caused by the scaling of the z-displacement value: it gets rounded in order to place the sprite on an integer coordinate. Hmm... I think to fully solve this you'd need a scaling function that lets you define a scaling origin that is guaranteed to lie on an integer coordinate.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: selmiak on 14 Dec 2015, 12:53
I'm not sure when this issue first started occurring (I have been busy with other things for some time and have been away from AGS), but Avast antivirus is apparently now blocking AGS executables on my system.
I still have problems with Avast even with Deeps Screen off, I have to disable all file screening..
Are we the ones who should be responsible for this, or Avast team is :undecided:? Have anyone tried asking their support/developers about why this may happen?

Maybe it is because AGS is not digitally signed (or has no contract with microsoft/avast) and thus not recognised as a trusted source and the game.exe files AGS creates are even less so.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 14 Dec 2015, 14:28
 In the first video, the character sprites have 119 pixels width and 337 pixels height, 147 KB size each. In the second video, the character sprites have 286 pixels width and 372 pixels height, 415 KB size each. Thanks for helping. I think i figure it out now and i know what i shouldn't do next time.

@Snarky, at the beginning i thought realistic darkness was a good idea to make a realistic atmosphere but i agree with you, it affects gameplay in a bad way. I will work on those dark scenes to make sure player feels comfortable with it. Thanks for the advice.

Next time, i won't share a feedback unless i'm absolutely sure it's about the engine (3.4.0.6) (nod)
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Snarky on 14 Dec 2015, 15:22
Oh, but this is an interesting and rather serious problem, so it's good to have it reported!

It's just that (if my speculation is correct) there's not a lot to do about it without going in and changing some pretty fundamental parts of the engine. And as for being in the wrong thread, we moderators can fix that. (Or we could, if people would stick to one topic per post... :P )
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 15 Dec 2015, 13:35
Oh, but this is an interesting and rather serious problem, so it's good to have it reported!


Really ? When you explained about sprite position I thought that was a known issue from older versions. OK then, i will report anything interesting I've experienced :)

In case they are unnoticed on my previous messages, i want to re post that i found few things :

* You can't take screenshots by pressing PrtScr (print screen) button on a full screen game. Anything you shot and paste it to your paint program will be black. You can take it by external capture programs though, like Fraps.
* AGS doesn't compile a template. I encountered this with compressed sprites option. I've no idea if it compiles it with uncompressed sprites.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 15 Dec 2015, 13:46
I keep asking to report the bugs in the issue tracker :(.
(This for now: http://www.adventuregamestudio.co.uk/forums/index.php?action=projects)
I really cannot keep track of the bugs reported in the 20-pages long forum thread.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Sslaxx on 15 Dec 2015, 14:00
I keep asking to report the bugs in the issue tracker :(.
(This for now: http://www.adventuregamestudio.co.uk/forums/index.php?action=projects)
I really cannot keep track of the bugs reported in the 20-pages long forum thread.
It's clear people aren't getting the message about this, but what to do about it?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 15 Dec 2015, 14:20
I keep asking to report the bugs in the issue tracker :(.
(This for now: http://www.adventuregamestudio.co.uk/forums/index.php?action=projects)
I really cannot keep track of the bugs reported in the 20-pages long forum thread.
It's clear people aren't getting the message about this, but what to do about it?

I guess I could make a sticky topic.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Snarky on 15 Dec 2015, 15:12
Would it be possible to have the issue tracker appear as another sub-forum? I think the problem is that (despite being accessible from the top menu) it's rather hidden away and hard to find.

Though I suppose with the plan to change to an external system, that won't really be relevant any more.

Personally I think it's just a lost cause. People are inevitably going to make requests whenever a thread jogs their memory or creativity, in those threads. I think it'll be easier to just move or copy any feature requests over into a dedicated thread whenever they're made, and maybe someone could then go through it and copy them over to the issue tracker if that's worth doing.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 16 Dec 2015, 01:25
I keep asking to report the bugs in the issue tracker :(.
(This for now: http://www.adventuregamestudio.co.uk/forums/index.php?action=projects)
I really cannot keep track of the bugs reported in the 20-pages long forum thread.

You're right, sorry. We should make things easier for you. I submitted them to tracker.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 16 Dec 2015, 15:17
Thank you :)
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Gord10 on 31 Dec 2015, 22:35
I am having trouble with the Default Game template. It says ProcessClick is undefined (and I know it is). But how am I going to solve this? I tried changing ProcessClicks with Mouse.Click's, but now after clicking with a left button, I can't change the mode with the right one.

Edit:
I solved the problem. I disabled "Enforce object-based scripting" option in Game Settings to allow ProcessClick.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 02 Jan 2016, 12:56
I am having trouble with the Default Game template. It says ProcessClick is undefined (and I know it is). But how am I going to solve this? I tried changing ProcessClicks with Mouse.Click's, but now after clicking with a left button, I can't change the mode with the right one.

Edit:
I solved the problem. I disabled "Enforce object-based scripting" option in Game Settings to allow ProcessClick.

This is one of the solutions, but the new name of ProcessClick is Room.ProcessClick, as mentioned in the first post:

Global functions moved to Room class
GetRoomProperty ---> Room.GetProperty
ProcessClick -> Room.ProcessClick

GetRoomProperty is now Room.GetProperty to match Room.GetTextProperty. The old ProcessClick is now Room.ProcessClick.
You may need to fix your scripts if you use any of these, or disable "Enforce object-based scripting" option in Game Settings.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Gord10 on 02 Jan 2016, 16:30
Yes, I have noticed it after posting the problem (my bad here). Though, I think it would be best if the game template that comes with 3.4.0.6 has ProcessClick problem fixed.

I have noticed some minor problems, as well. Start Page and splash screen are still about AGS 3.3. You may want to fix them.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 02 Jan 2016, 17:22
Yes, all this is still in TODO list, as well as manual update.
My first priority now is to release AGS 3.3.5 update, which is supposedly the last update to 3.3 version; then I'll focus on finishing 3.4.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: cat on 09 Jan 2016, 09:54
Just a quick question: With this version, is is possible to have function pointers/delegates/whatever you call them?
I couldn't find it in the first post.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 09 Jan 2016, 14:26
Just a quick question: With this version, is is possible to have function pointers/delegates/whatever you call them?
I couldn't find it in the first post.
No, AGS Script still does not support that.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: cat on 09 Jan 2016, 14:47
Ok, thanks for the info.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: cat on 15 Jan 2016, 17:24
I'm not sure if it was always like this or it's a new thing, but:

Is it not possible to have a character and view with the same name? I have a view "xyz" and when I want to name a character "cXyz" I get a message that this name is already used. However, if I rename the view to "vXyz" it works. It's a bit weird that for one item the prefix matters and for the other it doesn't.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Dave Gilbert on 15 Jan 2016, 17:28
I have a feature request of my own!

Is there a way to change the dialog option text at runtime? There's a character in the game that the player can name, and I'd love to be able to have the dialog options reflect that.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 15 Jan 2016, 18:17
Is it not possible to have a character and view with the same name? I have a view "xyz" and when I want to name a character "cXyz" I get a message that this name is already used. However, if I rename the view to "vXyz" it works. It's a bit weird that for one item the prefix matters and for the other it doesn't.
I think this is because AGS still creates old-style integer constants for characters and views IDs. These constants have name in all capital letters, for characters they are equal to character name minus "c" prefix, but for the views they are probably identical to View name.



Is there a way to change the dialog option text at runtime? There's a character in the game that the player can name, and I'd love to be able to have the dialog options reflect that.
Not at the moment, but if you have custom dialog options rendering in your game, you may do a trick and draw different text for particular options. For example, you may introduce some kind of "tag", a special sequence of characters, like "%MY PET NAME%", and if this is found in dialog text, replace it with a name of your own before putting that on screen.

Regarding the feature request, this is potentionally possible to do in some future update.

Just to clarify on my plans, I am very much wary (as probably most of the users) that this 3.4.0 version has not been released properly for more than 1.5 years; so my priority aims are:
- release 3.3.5, which is a last feature update to 3.3 branch.
- merge everything into 3.4.0 and bring it at least to beta stage (no more features added).
- only after that I will create next WIP version to add more features.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: monkey0506 on 16 Jan 2016, 08:28
I can confirm the naming issue. IFF a character name starts with the 'c' prefix, then AGS will (for legacy purposes) define the preprocessor macro "NAME" (where "NAME" is the rest of the character's name, sans the 'c' prefix). View names are similarly made into macros, but lack any prefix. So a character "cName" and a view "Name" will actually conflict. Unless I'm mistaken, AGS's compiler actually has a "proper" preprocessor for macros in that it does a text replacement in your scripts. This would mean that it could be phased out of the editor altogether without negatively affecting legacy games. I'm not aware of anyone who has upgraded to current versions of the editor that is still relying on character name macros (typically used with the legacy character script functions).
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: cat on 16 Jan 2016, 21:30
Interesting. Since there are no namespaces for items, it might be useful to use a prefix for views anyway to easily find them in Intellisense.

@Dave Gilbert: Custom dialog rendering is actually quite easy and might be worth taking a look at for your issue :)

@Crimson Wizard: Beta stage would be great. I think it's quite stable by now and has lots of useful features.


I just discovered some issues with custom resolutions and the built-in dialogs. Not sure if anyone has ever used such a thing before...
Anyway, with a resolution of 380x270 the built-in dialogs (exit confirmation, Debug-change-room) are placed and scaled in a way that only half of the dialog is visible on screen.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: on 17 Jan 2016, 09:41
Last versión (3.4.6) the Linux port option has dissapear in general settings. Why?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: cat on 17 Jan 2016, 12:14
Another question: is it now possible to somehow change the name of an object? I can set cSomeCharacter.Name but oItem.Name seems to be readonly.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: monkey0506 on 18 Jan 2016, 13:50
Last versión (3.4.6) the Linux port option has dissapear in general settings. Why?

It seems CW has had some trouble rebuilding for Linux. You can grab the 3.4.0.6 Linux binaries here (https://bitbucket.org/monkey0506/ags/downloads/AGS_Linux_3.4.0.6.rar). Extract to AGS editor folder, and the Linux build option should reappear in General Settings.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 18 Jan 2016, 15:05
3.4.0.6 Linux binaries here (https://bitbucket.org/monkey0506/ags/downloads/AGS_Linux_3.4.0.6.rar). Extract to AGS editor folder, and the Linux build option should reappear in General Settings.

Thank you!
Added link to the first page.


Another question: is it now possible to somehow change the name of an object? I can set cSomeCharacter.Name but oItem.Name seems to be readonly.
No, although we had such requests.
I suggest using Custom Properties, which can be changed at runtime now.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: jwalt on 19 Jan 2016, 22:48
I'm not sure when this issue first started occurring (I have been busy with other things for some time and have been away from AGS), but Avast antivirus is apparently now blocking AGS executables on my system.
I still have problems with Avast even with Deeps Screen off, I have to disable all file screening..
Quote
Are we the ones who should be responsible for this, or Avast team is :undecided:? Have anyone tried asking their support/developers about why this may happen?

Maybe it is because AGS is not digitally signed (or has no contract with microsoft/avast) and thus not recognised as a trusted source and the game.exe files AGS creates are even less so.

I'm using 3.3.0. I've been trying to make a MAGS entry and had sent my game to a couple of friends for beta testing. The only one who had trouble getting the game to run uses Avast. I'd changed the game's name along the way, and Avast picked that up, alerting the gal that something was wrong with the file name. I suggested she rename the exe file to its original name, the one Avast was bitching about. She did it, and the game ran without her having to shut down her antivirus. Not sure, but this may have to do with trying to change the name that, according to the start up screen, can't be changed. I didn't have a title that worked for me until I'd already made four tries. Not sure this has any relavance, but might be interesting to know how many of the folks with Avast problems are trying to play a game that has had its unchangeable name changed, somewhere along the line.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: cat on 20 Jan 2016, 21:56
Is there a known issue with System.Volume? Because setting this value didn't work, but
Game.SetAudioTypeVolume(eAudioTypeMusic, level, eVolExistingAndFuture);
did work (thanks Gurok for that).
Im using MIDI music.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: monkey0506 on 25 Jan 2016, 13:45
This version is feature-locked, yes? If I want to add a new feature, should I push up a 3.4.1 development branch? Should that first wait for 3.4.0 to pull in changes from master?

@cat: I'm not certain, but I seem to recall some quirkiness about MIDI audio... there might be something to be done, but I'm not sure (didn't want you to feel that you were ignored).
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 25 Jan 2016, 14:07
This version is feature-locked, yes? If I want to add a new feature, should I push up a 3.4.1 development branch? Should that first wait for 3.4.0 to pull in changes from master?
I would say, that depends. It will still take some time to merge latest changes from 3.3.5 into 3.4 (more changes were done to code that has differences in two branches).
On other hand, I would advise against putting some big feature which could take months to flesh out and test into this branch.

In short - if it is something that does not change engine radically and not imply later "add-ons", I guess it is still okay to add to 3.4.0.
If contrary, you could keep it in separate feature branch for the time being, or we may discuss opening new develop branch (although, to be honest, personally I don't like to have too many of these).

EDIT: Additionally, we need to seriously consider how we choose next versions. Since introduction of the automatic build server, we were talking with Nick Sonneveld about moving to shorter development periods. Having that in mind, adding minor features could be done as updates to 3.4, while developing major, and especially breaking, changes should aim next major version (3.5).
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: monkey0506 on 25 Jan 2016, 16:42
Understood. I was mostly wanting to expose some additional properties that aren't available at run-time. Specifically, the "say" flag for dialog options and maybe the dialog bullet setting. I looked into the "say" flag a bit, and AFAICT it shouldn't impact anything else, just whether the option is spoken when the interaction is processed. I'm needing read and write access to that flag. The dialog bullet setting I really only need read access to so that I can initialize my module's bullet property.

FWIW, these would seem to complement the other changes to custom dialog option rendering (which is exactly what I need them for). I will take a look at this later, and base my changes on 3.4.0 branch.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: cat on 27 Jan 2016, 22:11
Thanks, monkey0506. Once I'm done with MAGS I might create a demo project and file a tracker ticket.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: cat on 30 Jan 2016, 15:06
Another audio issue, this time with an ogg sound effect.

I wanted to play a sound effect, but it was not audible. The effect was very short, about 340 milliseconds. Playing another ogg sound instead worked. When I made the original sound longer (i.e. by adding silence at the end until it was about 630 milliseconds), it was suddenly audible. Is there a minimum length for sound effects?

Opening the audio clip in AGS and using the play button there worked in both cases, the long and the short version.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: monkey0506 on 02 Feb 2016, 22:28
Here is a build for Android: https://bitbucket.org/monkey0506/ags/downloads/AGS-3.4.0.6.apk
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: monkey0506 on 02 Feb 2016, 22:48
It seems that the master branch can be merged into develop-3.4.0 without any conflict. Would it be a good time to go ahead and merge the branches and start to consolidate this into a release version?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Mehrdad on 03 Feb 2016, 05:22
Great news.I hope CW and your leave 3.3.x and release 3.4 this week.
monkeyo506 please see my post for Android :
http://www.adventuregamestudio.co.uk/forums/index.php?topic=44768.msg636529764;boardseen#new
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 04 Feb 2016, 12:33
It seems that the master branch can be merged into develop-3.4.0 without any conflict.
Is there a practical purpose for merging master into 3.4.0 right now? There are no general engine changes in master as compared to 3.4.0, only some stuff related to automatic building.
develop-3.3.5 must be merged to 3.4.0 (when its complete). There will be quite a lot of conflicts in the code, which will take time to resolve.


I hope CW and your leave 3.3.x and release 3.4 this week.
Impossible. I must finish 3.3.5 first. Then, it may take at least a week to merge 3.3.5 and 3.4.0.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: monkey0506 on 04 Feb 2016, 13:47
I think I was confused because of the fact that there is active development in master, develop-3.3.5, and develop-3.4.0. I was thinking that the latest changes to master were the latest pre-3.4.0 changes. The motivation then was to finalize master for a formal release and prepare 3.4.0, but of course I misunderstood. I don't understand why any changes have been placed in master as I thought master was supposed to always represent "latest stable release". Obviously if we're making changes to master, then that's not the case... :(

What, then, must be done to merge 3.3.5 into 3.4.0 I wonder... I'm not trying to frustrate the situation, I'm just trying to find some way to be helpful and do something useful.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 04 Feb 2016, 14:37
Yes, I know, that may be confusing.

Latest changes to master were not affecting anything in the engine, rather they served automatic building (I think these were updates to Android, iOS and PSP libraries). Also I added some info to the readmes.

3.3.5 should be finished, then I guess we will have to make a merge in pull request, because some of the changes made to 3.3.5 require complete rewrite for 3.4.0 (code is that different).

What's left for 3.3.5 is few issues, mainly related to Linux, plus updating the Manual, which I am working on right now.
I think it's easier to refer to 3.3.5 milestone in Git: https://github.com/adventuregamestudio/ags/milestones/3.3.5
Also, I wanted someone to look into this strange issue: http://www.adventuregamestudio.co.uk/forums/index.php?issue=735.0
Also, there were number of (seemingly) minor issues in the Editor, that were planned for 3.3.5 long ago, but almost no one works on the Editor nowadays: http://www.adventuregamestudio.co.uk/forums/index.php?project=5;area=issues;status=open;version=144
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 06 Feb 2016, 15:03
Any news about 3.4.0.7 ? Release date is still unknown ?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 07 Feb 2016, 14:25
Any news about 3.4.0.7 ? Release date is still unknown ?

Just in the post above I as saying, that I must finish 3.3.5 first, then merge into 3.4.0, and that will be next release.

Are you looking for particular fixes/features? The development of 3.4 was practically stalled while I was working on 3.3.5.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 09 Feb 2016, 13:41
Any news about 3.4.0.7 ? Release date is still unknown ?

Just in the post above I as saying, that I must finish 3.3.5 first, then merge into 3.4.0, and that will be next release.

Are you looking for particular fixes/features? The development of 3.4 was practically stalled while I was working on 3.3.5.

I was looking for a solution of weird mouse cursor movement issue on full-screen. It really annoys me and i guess it will absolutely annoy players :( Would you recommend me to switch to other versions ? I don't know if it is possible to switch from 3.4.0.6 to 3.3.4. (Game resolution is 960*540)
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 09 Feb 2016, 13:59
I was looking for a solution of weird mouse cursor movement issue on full-screen. It really annoys me and i guess it will absolutely annoy players :( Would you recommend me to switch to other versions ? I don't know if it is possible to switch from 3.4.0.6 to 3.3.4. (Game resolution is 960*540)
I see.

No, it won't be possible to switch versions.
I hope to finish 3.3.5 on this week, after which I will be working on merging 3.3.5 into 3.4.0 (which will carry mouse fix as well).
I predict that itself may take about a week.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Dave Gilbert on 09 Feb 2016, 16:57
I was looking for a solution of weird mouse cursor movement issue on full-screen. It really annoys me and i guess it will absolutely annoy players :( Would you recommend me to switch to other versions ? I don't know if it is possible to switch from 3.4.0.6 to 3.3.4. (Game resolution is 960*540)
I see.

No, it won't be possible to switch versions.
I hope to finish 3.3.5 on this week, after which I will be working on merging 3.3.5 into 3.4.0 (which will carry mouse fix as well).
I predict that itself may take about a week.


This is wonderful news, CW! Thank you so much for all your hard work.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: monkey0506 on 09 Feb 2016, 19:34
I hope to finish 3.3.5 on this week, after which I will be working on merging 3.3.5 into 3.4.0 (which will carry mouse fix as well).
I predict that itself may take about a week.

Just a head's up, I've been working on this myself actually. There are some big changes involving the mouse code (and maybe some others) that I may not have merged properly so I'll ask you to take a careful look at the merged features when I have it ready, since you know the code better than myself, but I've made quite a bit of headway here... a lot of the conflicts are entirely trivial.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 09 Feb 2016, 20:05
Just a head's up, I've been working on this myself actually. There are some big changes involving the mouse code (and maybe some others) that I may not have merged properly so I'll ask you to take a careful look at the merged features when I have it ready, since you know the code better than myself, but I've made quite a bit of headway here... a lot of the conflicts are entirely trivial.

Since I knew about this only now, I would like to ask to create a separate branch for this (forking from current develop-3.4.0), and do several commits: first a merge commit with only trivial items merged, and then separate commits each reimplementing a single feature/change (that requires different reimplemention). Then, this should be done as a pull request (I was myself planning to make one) for review and fix if required, etc.

I was mostly wondering about graphics mode init and winsetup code, because they were rewritten completely. Some fixes to gfx init made in 3.3.5 may not need to be carried over at all.

E: Also, idk if you are aware of that, but I noticed that when you were updating 3.3.5 branch in your repository you created redundant "merge" commits instead of fast-forward update; could it be that you are using "always create merge commit" option?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 09 Feb 2016, 22:50
I was looking for a solution of weird mouse cursor movement issue on full-screen. It really annoys me and i guess it will absolutely annoy players :( Would you recommend me to switch to other versions ? I don't know if it is possible to switch from 3.4.0.6 to 3.3.4. (Game resolution is 960*540)
I see.

No, it won't be possible to switch versions.
I hope to finish 3.3.5 on this week, after which I will be working on merging 3.3.5 into 3.4.0 (which will carry mouse fix as well).
I predict that itself may take about a week.


Great news ! That's sooner than I've expected. When you release the merged edition, I'd gladly switch from 3.4.0.6 to it and share some feedback. I haven't encountered any editor or game crashes by 3.4.0.6. I believe I won't encounter any problems with the merged edition too.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 10 Feb 2016, 00:19
Looking at that pull request makes me scared (lol).
6 months of differences! Ugh-oh.

I will be able to check this properly only after we have 3.3.5 release candidate.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: monkey0506 on 10 Feb 2016, 02:51
So far the only things in the pull request are the non-conflicting merged commits, so presumably those shouldn't present any issues to the code, but it does leave many features in an incomplete state. Any files with conflict were simply left out so far on this branch. I'll be working on that.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Mehrdad on 12 Feb 2016, 17:17
I switched from 3.3 to 3.4. Everything is OK but I see delay and similar to pause about 2 second when I have change room.it only happen when I have fade in /out  . Other transitions is ok.Also 16 bit is fine it occurs on 32 bit.Where is my wrong?
Edit: compile exe is OK too. I have this problem in to the test game in editor.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: LameNick on 13 Feb 2016, 22:37
also when testing a game in the editor, playing theora video doesn't seem to work, while in compilation it works.

(not that it poses any problem for me, its just a little strange)

Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 18 Mar 2016, 12:57
Just FYI, we are in the process of merging AGS 3.3.5 into 3.4.0. The 3.3.5 release was delayed because of several issues found, but these are dealt with now.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 18 Mar 2016, 14:52
Just FYI, we are in the process of merging AGS 3.3.5 into 3.4.0. The 3.3.5 release was delayed because of several issues found, but these are dealt with now.

Wonderful ! We're eagerly anticipating it :)
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Dave Gilbert on 18 Mar 2016, 16:08
Just FYI, we are in the process of merging AGS 3.3.5 into 3.4.0. The 3.3.5 release was delayed because of several issues found, but these are dealt with now.

This is super exciting. Thank you again for all your hard work, CW!
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: AGD2 on 19 Mar 2016, 20:35
Brilliant news! Thanks CW an co.!

Once the merge takes place will games compiled with the latest engine be compatible with the AGS Steam plug-in? I'd like to update Mage's Initiation to it prior to the beta testing stage, but if the Steam plugin won't be compatible right out of the gates, I'll hold off.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 19 Mar 2016, 20:51
Once the merge takes place will games compiled with the latest engine be compatible with the AGS Steam plug-in? I'd like to update Mage's Initiation to it prior to the beta testing stage, but if the Steam plugin won't be compatible right out of the gates, I'll hold off.
I know little of AGS Steam compatibility, but frankly speaking I do not see why plugin cannot be compatible with either version, because engine's plugin API was never changed.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 24 Mar 2016, 19:57
 Crimson, do you plan to include "changing hotspot and object names at run-time" to the upcoming merged version ?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 24 Mar 2016, 21:19
Crimson, do you plan to include "changing hotspot and object names at run-time" to the upcoming merged version ?
No... where it comes from?
I do not really plan to add anything else except bug fixes, because this version was developed for too long.
If someone else will have time to work on it, while I am merging the two versions, we may take it, but still I will not like to add some serious changes.

There are already custom properties that you may change at runtime in this version, and that may be used to substitute object names for now.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 24 Mar 2016, 21:44
Crimson, do you plan to include "changing hotspot and object names at run-time" to the upcoming merged version ?
No... where it comes from?
I do not really plan to add anything else except bug fixes, because this version was developed for too long.
If someone else will have time to work on it, while I am merging the two versions, we may take it, but still I will not like to add some serious changes.

There are already custom properties that you may change at runtime in this version, and that may be used to substitute object names for now.

No problem. I just wanted to know it before I dive into hotspots' and objects' names work.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 18 Apr 2016, 22:00
It's been a while. Any news ? I'm close to release my game. May be in 2 two weeks. Am I going to have a chance to try the merged version ? :smiley:
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 18 Apr 2016, 22:05
It's been a while. Any news ? I'm close to release my game. May be in 2 two weeks. Am I going to have a chance to try the merged version ? :smiley:
I do not know. We've met a problem that delayed us again. Currently I am waiting an answer from another team member.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 19 Apr 2016, 12:37
It's been a while. Any news ? I'm close to release my game. May be in 2 two weeks. Am I going to have a chance to try the merged version ? :smiley:
I do not know. We've met a problem that delayed us again. Currently I am waiting an answer from another team member.

Okay then. I'll be waiting for good news. :smiley: Good luck.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 02 May 2016, 02:13
Okay, an update. We just had one (probably most difficult) "blocking" issue resolved; I am planning to work hard next days, getting the rest of the merge done.
I will have to make a break for several weeks soon, so I hope I can release a new Beta version on this week.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Sslaxx on 02 May 2016, 10:46
What was the issue?
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 02 May 2016, 14:37
What was the issue?
Merge conflicts in the compiler code.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 03 May 2016, 00:59
Okay, an update. We just had one (probably most difficult) "blocking" issue resolved; I am planning to work hard next days, getting the rest of the merge done.
I will have to make a break for several weeks soon, so I hope I can release a new Beta version on this week.

Whoaa ! That's wonderful news man :smiley: I'm dying to switch from 3.4.0.6 to merged edition. You've really worked hard.

Note : I think I've discovered something. In 3.4.0.6, when you update scripts , old save games (saved before update) aren't affected at all, give no error and work like a charm. Is it known or I've just discovered it ? :smiley:
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Crimson Wizard on 03 May 2016, 01:20
Note : I think I've discovered something. In 3.4.0.6, when you update scripts , old save games (saved before update) aren't affected at all, give no error and work like a charm. Is it known or I've just discovered it ? :smiley:
Not every change breaks savedgames. Only those that alter the number of game objects, including global variables in script (but not local ones!). If you just modify some functions, they will still work. 3.4.0 is not different from previous version in that aspect.
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: proximity on 03 May 2016, 01:44
Note : I think I've discovered something. In 3.4.0.6, when you update scripts , old save games (saved before update) aren't affected at all, give no error and work like a charm. Is it known or I've just discovered it ? :smiley:
Not every change breaks savedgames. Only those that alter the number of game objects, including global variables in script (but not local ones!). If you just modify some functions, they will still work. 3.4.0 is not different from previous version in that aspect.

Of course. I haven't added anything new. Like you said, I've just modified functions. False alarm :)
Title: Re: AGS 3.4.0.6 (Alpha) - Builder Patch
Post by: Dave Gilbert on 03 May 2016, 14:57
Okay, an update. We just had one (probably most difficult) "blocking" issue resolved; I am planning to work hard next days, getting the rest of the merge done.
I will have to make a break for several weeks soon, so I hope I can release a new Beta version on this week.
(http://www.court-records.net/animation/pearl-cheerful(a).gif)

Thanks CW! Really looking forward to it!