Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - Crimson Wizard

#541
Quote from: eri0o on Tue 14/03/2023 21:52:44I would have it signed on the left bar with a lightning bolt if it's linked by something, and if matches the style of something that's normally linked but it's not linked, have an exclamation, like this ⚠️.

Sorry, I did not understand this sentence. Which "left bar" are you refering to?


Quote from: eri0o on Tue 14/03/2023 21:52:44I wouldn't automatically link things right now until the delegates idea advances, since that would probably change things.

Change things how, theoretically? Whether one idea contradicts the other depends on what is implied by both of these features. But it may only be seen if the idea is elaborate.

Afaik the idea of a delegate implies to have an "event" or "function pointer" type of property in classes, which may be set or unset in scripts, at runtime.
The "automatic linking", at least from what I see in posts above, suggests to utilize already existing functionality of binding a script function to event at design time. That is, something is done automatically in addition to manual work (which can be done anyway).

I would also not recommend to wait for the implementation, as, knowing how AGS progresses, delegates may never be implemented, or implemented 5 years later. IMO it's best to decide on theoretical goals; knowing goals would let us know what is safe to consider and implement, and in which direction to develop.
#542
For this to have any progress, we would need a more detailed specification on how such feature would work, on which stage and which part of the program is responsible for this. Also, what's the input and the output, so to speak. Is this auto-link a one time operation that changes the project data, or it has only an effect on the output data (and thus fully repeated each time a game is recompiled)?

For one example, in regards to the compiler's warnings; a script compiler does not know anything about object links or objects themselves. This information is stored in a different data source which is not a part of a script compiler's input. Therefore it cannot make such warnings. Something else might (an extra process before compiling the script?).


On similar topic, I recall there have been another suggestion, where room handlers should be fully automatic, because there can be only 1 room loaded at a time.

On another hand, there's an idea of supporting delegates, where one would be able to link multiple handlers to the same event, right in script. Will that conflict with the above ideas in any way?
#543
We have similar case noted in a FAQ (https://adventuregamestudio.github.io/ags-manual/FAQ.html) in the manual, but apparently people still miss it. Probably because they focus on idea that particular command does not work correctly.

There's a common advice: if you just wrote a new function and commands inside do not seem to work, then the first thing to try is to place a breakpoint, or a Display command near and see if it executes. If not, that usually means that the whole function does not run, and that is a problem you need to solve.
#544
Quote from: Matti on Mon 13/03/2023 21:22:02
Quote from: Crimson Wizard on Mon 13/03/2023 15:08:53on_mouse_click is not called when you click on GUI. eMouseLeftInv/RightInv are only passed when you click on items themselves (in case "override inventory clicks in script" is true), but not on empty space in inventory window.

Are you sure?


Frankly, I was not fully certain, so I had to test this right now. In my test game it is called when clicking on items, but not on empty space.

In our BASS template we have a "on_event" handler for right clicking over empty inv space, similar to what Khris suggested.

Given the above, I cannot explain how your code works, if you are definite that it works on empty spaces too. Can you double check that it actually works, and you don't have anything in on_event related to eEventGUIMouseDown? or perhaps in rep-exec?


EDIT: oh, I could swear we even had a ticket opened for this, and found it:
https://github.com/adventuregamestudio/ags/issues/472
#545
Quote from: Snarky on Mon 13/03/2023 15:17:58Fair enough, but wouldn't it still be easier to use the OnClick event of the GUI itself?

GUI's On Click event is not triggered when you click on controls.

I don't know which "empty space" is OP referring to, but in case it's an empty space inside the InventoryWindow control, only on_event will work.
#546
Quote from: Snarky on Mon 13/03/2023 14:19:46Edit: Oh, I see, you couldn't find a way to add an event handler for that. It may not have an event to hook up. In that case, you do have to do it in on_mouse_click():

@Snarky, on_mouse_click is not called when you click on GUI. eMouseLeftInv/RightInv are only passed when you click on items themselves (in case "override inventory clicks in script" is true), but not on empty space in inventory window.

This is why there has to be these "hacks" with on_event, as in Khris's code.
#547
So, there was a small bug found, where Objects with ID >= 100 failed to Animate.
(Objects limit was increased 40 -> 256 in this version, and there was some weird legacy behavior that had conflicts with this.)
If anyone interested, here's a temp build with a fix:
https://cirrus-ci.com/task/4928866972598272

Another thing, we need to update Sierra template again, because it contains a small bug noticeable if you have translations and kept the default options Panel.
FYI the fix looks like this:
https://github.com/adventuregamestudio/ags-template-source/commit/dac12352fa0dc398c1e6db45a1d5a35c4ad06e5c
#548
@SarahLiz, I think something was changed in the forums, and now you have to type [ spoiler ] instead of [ hide ].
#549
Updated to RC9 (3.6.0.44).
(use download links in the first post)

Editor:
- Editor now copies a acsetup.cfg file from the project's root folder (if one is provided by a user) as a base for generating default config file. Settings from Default Setup will be written over, but other found options won't be removed.

Engine:
- Added "emul_mouse_mode" and "emul_mouse_relative" options to config in "[touch]" category. Touch-to-mouse emulation (mobile and Web ports) now uses distinct relative motion setting.
- Added stubs for agsappopenurl plugin.
- Fixed UTF-8 translations in ASCII-sourced games not correctly working on Unix systems (Linix, OSX, Android, etc).

Compatibility:
- For pre-3.5.0 games support old behavior of coincidental dynamic sprite replacement on GUI backgrounds (and few other places) without explicit assignment; that is - when the new DynamicSprite is created right after deleting an old one. (Yes, apparently there are few games that rely on that...)

Web/Emscripten:
- Few improvements for the overlay UI controls.
- Fixed few problems with the game focus and scaling when run in iframe.



Reported issues remaining:
* Direct3D is said to still be not fully stable when alt+tabbing in exclusive fullscreen mode: https://www.adventuregamestudio.co.uk/forums/ags-engine-editor-releases/ags-3-6-0-release-candidate-rc1/msg636650995/#msg636650995
#550
Engine Development / Re: AGS engine Linux port
Mon 06/03/2023 00:10:08
So, I found a bug in the engine, which happens when:
1. You have a ASCII format game and UTF-8 format translation.
2. You're running on system where original game's ANSI locale is not supported (or maybe the locale's name is not correctly defined for that particular system)*
In such case the engine makes a mistake an randomly corrupts some of the translation keys.

I'll be fixing this bug soon.

condition 2 - that's an issue on its own, and we'll hopefully look into this later; but it only matters if you are using extended ASCII/ANSI characters in your original game text.

Also, if this is a game you're making in 3.6.0, my recommendation is to convert to Unicode format anyway, which would help to avoid all these problems altogether.
#551
Engine Development / Re: AGS engine Linux port
Sun 05/03/2023 22:27:39
Quote from: cibersheep on Sun 05/03/2023 22:09:46I'm comparing the trs file from Czech (ascii/eol windows) vs Catalan (utf8/eol windows)

Czech looks more complete but also some of the strings are not translated only on Linux. I'm thinking: may the strings in the game and the strings in the trs be in different case? That would be ignore on Windows but not on Linux, right?

You are probably referring to the differences in name case in filesystems? There's no relation to this, the TRS must have lines 100% identical to the lines in script, including letter case. This is the internal engine logic, it does not depend on platform you're running on.

EDIT: again, supposed to... unless there's some error there.
#552
Engine Development / Re: AGS engine Linux port
Sun 05/03/2023 21:52:24
Oh, I actually just spoke with the game author on AGS Discord, so I might also ask him some questions.
#553
Engine Development / Re: AGS engine Linux port
Sun 05/03/2023 21:45:28
Well, the fact that the translation works on Windows means that tra is at least built correctly, as this data is used equally everywhere. (At least supposed to...)

Quote from: cibersheep on Sun 05/03/2023 21:00:32It is the same file (we are sharing it) and it is available online (the windows build): https://emabolo.itch.io/super-star-trek-25th

I might check that out. But I see that Linux version is not available for download yet, do you test the Linux build prepared in the Editor, or combine the game files with linux engine port by hand?

Also, could you please tell, how do I reproduce this problem on Linux; what is the easiest way to get there?
#554
I released another patch for 3.5.1, may be found on downloads page, or here:
https://www.adventuregamestudio.co.uk/forums/ags-engine-editor-releases/ags-3-5-1-patch-19/

This bug was present at least since AGS 3.4.0, but somehow nobody reported it since.
#555
AGS 3.5.1 - Patch 19
Full release number: 3.5.1.26


For Editor
Spoiler

For Android
Spoiler

For Engine/Editor developers
Spoiler

Released: 5th March 2023

Previous stable version: AGS 3.5.0 P10 forum thread


This release is brought to you by:

- Alan v. Drake
- Crimson Wizard
- Donovan Watteau (fix for big-endian systems)
- eri0o
- fernewelten (fixes)
- James Duong (implemented "--console-attach" option for Windows)
- Morgan Willcock
- Nick Sonneveld
- rofl0r
- Pablo Navarro (fixes)
- Thierry Crozat (bug fixing)
- vga256 (bug fixing)



Summary

3.5.1 is a minor update after 3.5.0, which contains mostly utility additions, fixes and perfomance improvements.


Changes in the Patch 19:

Engine:
- Fixed System.Volume is not correctly applied after restoring the save. (Regression since at least 3.4.0)


Changes in the Patch 18:

Engine:
- Fixed background speech and textual overlays may disable GUI when being continuously created in repeatedly_execute* kind of functions. (Regression since previous patch).


Changes in the Patch 17:

Editor:
- Fixed GUI.Visible property was resetting to false when PopupStyle is switched to Modal.

Engine:
- Performance improvement in Direct3D/OpenGL renderers, related to plugins which subscribe to render events.
- Fixed renderer error occuring if room background frames are of different sizes.
- Fixed software renderer may have an unpainted black line at the bottom, if there's a GUI or Overlay positioned partially offscreen.
- Fixed GUI buttons could retain mouse-over pic after interface is disabled then enabled (this is a regression since recent patch).
- Fixed crash occuring when user creates too many Overlays in script; will report a scripting error instead.
- Fixed memory leak occuring when the TTF font is drawn partially outside the DrawingSurface.
- Fixed Parser.Said() could lead to a program crash in case there are space-separated words following the comma (e.g. "climb,get in bed").
- Fixed crash occuring if a plugin tried to call SetVirtualScreen().

Plugins:
- Fixed SnowRain plugin drawing particles only in 320x200 bounds.


Changes in the Patch 16:

Editor:
- Fixed autocomplete crashing the editor if there was an import declared with type and variable having identical names, and user tries to type that variable's name and a dot to access its members.
- Fixed newly created Views taking free IDs in the middle of the list in random order instead of a straight one (after you previously deleted some Views).

Engine:
- Added missing "DrawSprite" function for "agsblend" plugin stubs.
- Fixed loading pre-3.5.0 games on big endian systems.
- Fixed GUI buttons not displaying the mouse-over image if the interface state was toggled to enabled state while the mouse was over the button.

Updated the manual with certain fixes and corrected examples of using Camera and Viewport structs.


Changes in the Patch 15:

Editor:
- Fixed crash that could occur when changing View's ID to an unused number in the middle.
- Fixed comments and string literals were styled incorrectly in dialog scripts.
- Fixed unterminated string literals in script were not considered as errors when processing scripts for translation update and autonumbering of speech lines, leading to wrong results.
- Fixed Editor was updating translation file even if errors were found while scanning the scripts, which could cause a TRS corruption.
- Fixed Editor could overwrite changes done manually to TRS while the editor is open and if you run a translation update right after.
- Fixed potential program crash on exit in case an editor's plugin has mistakes in "shutdown" callback. Instead editor will report a component's error, but still close properly after.

Script API:
- Removed a rule that Viewport and Camera with ID 0 can't be deleted.


Changes in the Patch 14:

Editor:
- Do not error when compiling a 256 colors game if Direct3D or OpenGL are selected as a default graphics driver (display a warning instead).
- Fixed crash when trying to import pre-2.60 game projects.


Changes in the Patch 13:

Engine:
- Fixed room object does not update its texture if it had a dynamic sprite assigned to it, and that sprite was unassigned, modified or recreated with same ID, and then reassigned again, - all within the same game frame.
- Fixed normal font renderer is not reinitialized correctly in the engine if a plugin uses IAGSEngine::ReplaceFontRenderer(), passing original renderer's pointer (which it received from the previous ReplaceFontRenderer call).


Changes in the Patch 12:

Engine:
- Fixed GUI textual controls don't redraw when the game translation changes until player clicks on GUI (regression since previous 3.5.1 updates).
- Fixed multitasking mode persisting if the game was switched from windowed to fullscreen mode (even though it's not supposed to work in fullscreen).


Changes in the Patch 11:

Editor:
- Fixed batch sprite export with "Set exported file as sprite source" option was assigning new source paths without file extension.

Engine:
- Perfomance fix: GUIs changing Transparency or Visible state should not redraw their surface.

Compatibility:
- Allow AudioClip.Play to to place clips on a crossfade channel, which is normally unaccessible from script. This prevents errors in some games that relied on this behavior.


Changes in the Patch 10:

Engine:
- Fixed crash when visible viewport does not have any linked camera.
- Fixed ListBox.FillSaveGameList() may include save slots with negative slot number (e.g. when the save file has "*.-01" extension).
- Fixed potential crash after failed RunAGSGame() call.
- Fixed search for the game data by GUID when restoring a save belonging to another game;
  this was implemented in 3.5.1, but appeared to not work correctly.


Changes in the Patch 9:

Editor:
- Removed restriction on max dialog topics in the project. The dialog limit in the engine was removed in 3.4.1, but remained in the Editor by oversight.
- Fixed Audio Clip items in the project tree not displaying their IDs right after being renamed.

Compiler:
- Fixed crash occuring when compiler tries to report "Already referenced name as import" error.

Engine:
- Added "--translation" and "--no-translation" command-line arguments.


Changes in the Patch 8:

Engine:
- Clearer error messages for Get/SetProperty functions.
- Fixed PlayFlic() command fails to start the video (regression in 3.5.1).
- Fixed DrawingSurface.DrawSurface() not applying transparency parameter correctly if the drawn surface has alpha channel.
- Fixed OVERHOTSPOT is not updated immediately when character's name changes while cursor is above that character.

Templates:
- In BASS template fixed right click not dropping currently selected item if cursor was hovering over another item.


Changes in the Patch 7:

Editor:
- Added "Layout -> Reset to Defaults" menu command.
- Editor will now reset panel layout to default state if loading layout fail for any reason.
- Default config is now saved also when the game is run in debug mode (F5). This ensures that the test run is using the latest Default Setup, if the user's config has not been created yet.
- Editor will now display an error if user tried to reserve too many channels for audio types.
- Fixed Editor failing to start if user preferences file is corrupted.
- Fixed "Use old-style custom dialog options API" was not set when importing pre-3.4.0 projects.
- Fixed comboboxes' drop-down arrows were not painted with the right color from a color theme.

Engine:
- Fixed program crash occuring if the game reserved too many channels for audio types.
- Fixed potential crash occuring when player loads a save made in a multi-frame room, but the room was since edited and no longer has as many frames.
- Fixed character may have incorrect Frame (property) values while turning.


Changes in the Patch 6:

Editor:
- Added line numbers in the dialog script editor.
- Fixed Dialog script loosing changes if the pane is closed or redocked.
- Fixed controls arrangement on the Dialog pane getting broken when it's redocked.

Engine:
- Fixed filepaths in scripts that have backslashes ('\') fail on non-Windows systems.
  All the (script) File functions will now convert backslashes in filepaths into forward slashes for compatibility.
- Fixed engine was still creating standard directories for game saves and data, even if user provided the custom paths for these.
- Fixed TextBox control crashing the game if it's empty and player presses Backspace.
- Fixed controls on a fully transparent GUI were not interactive (this is an original AGS behavior, which was unintentionally changed in 3.5.0 by mistake).

Compatibility:
- When running 3.5.0 games, treat fully transparent GUI as non-interactable.
  In AGS transparent GUIs may be still interacted with, but 3.5.0 introduced an unintentional (and undocumented) change to this, which was reverted in 3.5.1.

Android:
- Support global engine's config file when the game is run from the Launcher: it's located in the AGS games' parent directory, same place where android.cfg is.

WinSetup:
- Added "Custom game shared data path" to complement "Custom save path" option.


Changes in the Patch 5:

Contained no changes and was a formal re-release with only fixed program build instructions for Linux.


Changes in the Patch 4:

Editor:
- Fixed swapping of inventory item's numeric ID could lead to errors.
- Fixed crash when importing pre-3.* games with multiple script modules.
- Renamed "Enforce object-based scripting" setting to "Enforce post-2.62 scripting". This is for clarity.

Compiler:
- Fixed potential memory corruption when user script reaches max nested if/else blocks.

Engine:
- Also tell module name and approximate source line when reporting script import errors for the variables and local functions.


Changes in the Patch 3:

Editor:
- Fixed sprite file over 2 GB could not be loaded (regression since the last patch).

Engine:
- Further improvement to GUI perfomance: don't redraw GUI when the mouse cursor is hovering over or interacting with controls not leading to an actual visual change.
- Fixed ListBox items could become unaccessible if its font or height is changed leading to a disabled scrollbar.


Changes in the Patch 2:

Engine:
- Fixed speech lipsync getting disabled after loading another game with RunAGSGame().
- Fixed MOD/XM clips fail to play (regression).
- Fixed certain OGV videos fail to play (regression).
- Fixed software renderer was not updating game screen correctly when running a game with legacy "letterboxed" feature (regression).


Changes in the Patch 1:

Editor:
- Fixed script compiler sometimes was not specifying actual Dialog number when reporting errors in the dialog scripts.

Engine:
- Fixed Game.TranslationFilename always returning empty string (regression).
- Fixed GUI controls which were toggled from disabled to enabled state not responding to the mouse clicks until the mouse is moved (regression).
- Fixed OpenGL did not apply a Linear filter when "Render sprites in screen resolution" option is off.


What is new in 3.5.1

Editor:
- Added "Attach game data to exe" option to General Settings. This lets you to package game data separately from the game.exe (only important on Windows at the moment).
- Deprecated "Limit display mode to 16-bit" property in Runtime Setup as it's no longer used by the engine.
- Display aspect ratio in game resolution dialog.
- Implemented classic Color Picker dialog for the Color type values in the property grid, instead of the default one which does not allow user-defined colors.
- Improved tab switching performance for script windows.
- Editor will now enforce full game rebuild after upgrading an older project, this ensures that all scripts are recompiled with the new version rules.
- Fixed room lists in property editor were not updated after room number is changed.
- Fixed importing pre-3.* projects broken by incorrect assignment of "Game file name" property.
- Fixed importing Characters and GUI without sprites still created empty sprite folders.
- Fixed crash when exporting/importing Characters with no Normal View.
- Fixed translation compiler did not correctly save some of the escaped sequences, such as "\n".

Scripting:
- Implemented correct parsing of a "const string" function return type.
- Fixed implementing imported functions was forbidden in the room scripts.

Script API:
- Added GUI.Shown readonly property that tells whether GUI is active on screen. This is primarily for GUIs with "Popup At Y" style, because they hide themselves regardless of Visible property. Note that since 3.5.0 GUI.Visible only tells a script-set value.
- File.Open() now supports $CONFIGFILE$ tag which will try to open user config file for reading or writing regardless of where config is located on disk.
- Added System.SaveConfigToFile() which writes current engine settings to the user config file. Only the options that can be changed at runtime are written back at the moment.
- GetTranslation() now returns "const string" (was "string"). This is to prevent modifying returned string using old-style string functions, such as StrCat(), as this string may be allocated in the internal engine memory for its own use.

Engine:
- Support loading audio and video from data packages larger than 2 GB.
- Improved game data loading times by introducing buffered file stream. Initial tests showed 3-4 times faster file reading.
- Improved game perfomance by not reupdating all of the GUIs each time anything changes, instead only affected GUI will be updated each time.
- Some improvement to general script perfomance.
- Some improvement to script Dictionary and Set types perfomance.
- Room Object's Graphic property now can be assigned a sprite with index over 32767 and up to 65535. This restriction is due to internal data format, which cannot be fully fixed without breaking compatibility with plugin API. This may still be worked around by assigning a View, as View's frames may contain sprites of any index available.
- Similarily, Object's View, Loop and Frame can now be assigned a value over 32767 and up to 65535; not that this was ever an issue...
- Removed arbitrary limit of 1000000 dynamic array elements (now supports over 2 billion).
- Dialogs with no enabled options left will be now stopped, instead of raising script error.
- Engine will not longer quit the game when failing to write a save, but simply display an error on screen (...why this was a thing in the first place?!).
- When restoring a save engine will now try to match game pack by GUID rather than using exe/pack name. This resolves potential problems when game package may have different name in distribution to another system. Also makes saves in multi-game collections more reliable.
- In Debug game mode allow to toggle infinite FPS mode (prior it could not be turned off).
- Expanded text parser error messages for easier debugging.
- Adjusted all the command-line options to have consistent prefix convention, where all full-name options must be preceded by double-dash, and one-letter options by single dash.
- Added "--localuserconf" command and similar global config option which tells engine to read and write user config in the game's directory rather than using standard platform path. Game dir must be writeable for this to work.
- Added "--conf" command which forces engine to read only explicit config file on startup.
- Added "--user-data-dir" and "--shared-data-dir" commands for setting save game directory and shared app data directory from command line (this corresponds to existing options in config).
- Fully configurable log output (in both game config and command line) allows to set up which message types and groups are printed by which output methods (sinks), including: file, system console, in-game console. "warnings.log" is now created only if file log was not requested by user.
- Added "--log-" set of command line options for setting up log output.
- Added "--tell-filepath" option for printing known engine's and game's file locations.
- Added "--tell-gameproperties" option for printing some of the game's general settings.
More information on log config and --tell commands currently may be found in following text file: OPTIONS.md
This has to be added to the manual eventually.
- Support proper lookup for Allegro 4 library resources (such as its own config and digital MIDI patches) in the game directory.
- Engine will no longer precreate directories for common files: saves, user config, shared files and so forth, - before actually having to write these. This ensures that no new directories are created on your disk without actual need. Also this fixed a problem that could happen if someone deleted e.g. a game's save directory while game was running.
- Fixed running game from another directory by passing its relative filename as command-line argument: in this case engine was incorrectly using its own directory to search for external game data, opening files for reading by script command, and so on.
- Fixed some of the engine's own hotkeys (such windowed/fullscreen mode toggle) not working during certain skippable game states.
- Fixed overlay was set to wrong position if it were using TextWindow gui and either its text or X, Y properties got changed.
- Fixed crash occuring when the speech is using text window gui with zero Padding and the speech text is an empty line.
- Fixed characters and room objects were not updating their looks if their current graphic was a Dynamic Sprite, and that sprite was modified with ChangeCanvasSize, CopyTransparencyMask, Crop, Flip, Resize, Rotate or Tint function.
- Fixed Views' frames keeping reference to deleted Dynamic Sprites causing crashes. Now they will be reset to dummy sprite 0 for safety.
- Fixed engine crash when button's graphic is set to sprite out of range.
- Fixed animated cursor's normal graphic reappearing in between animation frames if mouse mode is being repeatedly reassigned, for example in rep-exec script.
- Fixed certain interactions did not work with GUI if it was made fully transparent.
- Fixed ListBox.FillSaveGameList() search pattern, it included files which contain save filename pattern but do not exactly match; for example: "agssave.001_".
- Fixed engine was ignoring audio files in game directory when running games which use old audio system.
- Fixed crash in Direct3D and OpenGL renderers that occured if game uses a plugin that performs software drawing on screen, and one of the rooms is smaller than the game's resolution.
- Fixed Direct3D was assigning wrong fullscreen refresh rate sometimes, slowing alt-tabbing.
- Fixed "--test" mode was lost upon restoring a save.

Engine Plugin API:
- Added IAGSEngine::GetRenderStageDesc() function which returns current render stage parameters. As of this version these parameters include 3 transformation matrixes, allowing any 3D render plugin to stay compliant to engine's scene rendering.

Compatibility:
- Fixed engine was trying to read unnecessary data when loading pre-2.72 games.
- Fixed "upscale" mode for old games (was broken in 3.5.0). Also engine will now try to detect if "upscale" mode wanted by reading old config options (if they are present).
- Fixed GUI.Visible not returning expected values for GUIs with "Popup At Y" style in pre-3.5.0 games, breaking some older games logic.
- Fixed potential buffer overflow when reading pre-3.1.0 games with old dialog script texts.
- Fixed engine was applying player's position too early when ChangeRoom was called for 2.72 and earlier games, which could result in wrong placement in the new room if the character was walking right before the transition.

Android:
- Corrected game scanning in AGS launcher, now it will work consistently with the desktop ports, and detect any compatible game data files named "*.ags" or "*.exe".

OSX:
- When looking for game files engine will no longer use hardcoded filename, will search for any compatible pack file instead.

Windows:
- Windows version of the engine now reads global configuration file. It is looked up in "%USERPROFILE%/Saved Games/Adventure Game Studio/acsetup.cfg"
- Default log file location is now also in "%USERPROFILE%/Saved Games/Adventure Game Studio".
- Added "--no-message-box" command line option to hide message boxes when alerts are raised. These messages will be still printed to log (if one is enabled).
- Added "--console-attach" command line option to try attach to the parent process's console. This is useful if you run game from command line and want to see engine's log in the console.

WinSetup:
- Fixed changing fullscreen mode from "use current desktop" to explicit resolution on save.







Thanks to everyone who contributed to and tested this version!



#556
Engine Development / Re: AGS engine Linux port
Sun 05/03/2023 19:27:02
Quote from: cibersheep on Sun 05/03/2023 16:02:58Hi!
I'm helping the SST remake with a translation but we seem to get random output depending on the host machine.

I'm using Ubuntu 20.04, the developer of the game uses Windows. I send him the translation files and he compiles everything.

-When he plays on Windows translation to Catalan is full
-When I do the same with the same build on Linux, I get mixed untranslated/translated strings
-Same result (mixed strings) if I test the same build on the web engine.

What would be the next steps to find the possible issue?

This is a strange issue, where translation not fully works or fully not works, but works only partially.

I don't have a lot of immediate ideas, but to start somewhere, there are few questions:

Are the non-working lines same all the time?
Can you compare the tra files (e.g. by size) to see if these are indeed identical in both windows and linux/web build?

If I understand correctly, you are using AGS 3.6.0 Editor (judging by the web port). Is your Text Format in this game Unicode or ASCII (may be found in Game Setiings)? What about the translation source format (TRS file)?
#557
Quote from: Volcan on Sat 04/03/2023 03:11:41But in the game, in the statusbar at the bottom of the screen still writes Book despites we see there's a coin on the counter not a book.

Well, of course, because it does not know that it should be using your custom property. You also need to change how the status bar displays the object names.

I don't know how do you that in your game, have you scripted the status bar yourself, or you are using some built-in behavior?

If custom property is supposed to be optional (not set for all the objects), then you could do this:
* check if custom property's text value is not empty;
* if it's empty, then use the object's Name;
* if it's not empty, then use the property's text.
#558
For a while the website is displaying a link to the forum thread of an upcoming Alpha/Beta version of AGS on downloads page, but it's hidden under a very obscure "Other Downloads & Resources >>" spoiler, and even there it's  somewhere in the middle of the links list, named "AGS Work in Progress Releases", with a link that leads to a forum thread.

(For some reason a "Previous version" link is even more visible)

This apparently is quite inconvenient and people keep missing its presence.

Is there anything that could be done with this?

From my experience, when software's Beta is ready, their websites have both latest stable and next wip version downloads as two buttons together.
#559
Quote from: Volcan on Fri 03/03/2023 23:02:483.5.1

I guess I need to update my AGS Studio.

You may, but you don't have to, if it's only this problem, there are solutions in 3.5.1 too which I mentioned, and maybe some others.

Quote from: Volcan on Fri 03/03/2023 23:02:48Edited: I noted in AGS main page, the last version is 3.5.1 patch 18.

Where can I find 3.6?

3.6.0 is still not final, it's a wip version. It's under "Other downloads & resources" on the page.
Also in this forum thread:
https://www.adventuregamestudio.co.uk/forums/ags-engine-editor-releases/ags-3-6-0-release-candidate-rc1/
#560
Quote from: Volcan on Fri 03/03/2023 22:09:15I tried it and I got an error. Object.Name is read only.

Which version of AGS exactly are you using? Object.Name is only available for change in 3.6.0.

In earlier versions you would need to use something else, like custom properties, or make your own variables in script to store object descriptions.
SMF spam blocked by CleanTalk