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

Topics - Gal Shemesh

#1
About
This module basically pauses the game upon call, takes a screenshot, and then draws that screenshot onto the screen as an overlay, with a nice touch of fade animation.

You enter the grayscale pause using the grayscale.FadeIn() function. Then you can show other elements on screen such as GUIs or close-up graphics for the player to interact with. When you're done, you exit from it using the grayscale.FadeOut() function, which fades back to full color and unpause the game.

This is the first module that I've created in AGS and I'm happily sharing it so everyone could enjoy and use it.

This module couldn't be done without the help of @Nahuel and @Crimson Wizard who assisted and directed me in the right way to making it work - thanks guys! I've credited you both in the module.

The idea behind making this module was to reproduce the same effect that exist in an old adventure game that I'm currently re-reproducing with captions, called "The Riddle of Master Lu" - in that game, when you opened GUIs during gameplay or examined inventory items which showed a close-up graphic of them, the entire screen went grayscale so the player won't be distracted by the surrounding but only by the specific GUI or close-up  graphic that was opened.

Attached an example how this module looks like in my reproduction game:


You may download the module from my personal dropbox.

Module was updated with the MIT license agreement as suggested in the forum guidelines. It is free for non-commercial AND commercial use - only request is to please credit authors if used.

Enjoy! :)


Changelog
=========
Version: 1.2.0
Released: 20th Septembre 2023
Notes: Added Original User GUI Hidden and Visible again during FadeIn/Out

Version: 1.1.0
Released: 20th Septembre 2023
Notes: Added TweenModule compatibility & Licence to header. by Nahuel

Version: 1.0.1
Released: 19th Septembre 2023
Notes: Added license. by Gal Shemesh.

Version: 1.0.0
Released: 19h Septembre 2023
Notes: Initial release. by Gal Shemesh
#2
I have a suggestion / feature request regarding the Sprite editor:

If sprite source files had moved on disk and we try to replace them from source, AGS gives an error that the source files are missing. However, it doesn't give an option to search for the files in the new path.

I thought that maybe I could just select multiple sprites and then update only a fraction of the path in their SourceFile property, and that it will keep the filename intact - but it actually changed all sprites to have the same path in their SourceFile, which is not correct. So I thought of 2 possible solutions:

1. To have the SourceFile property broken into 2 separate properties: one for the path without the filename, and one only for the filename. That way, the path of multiple sprites could be updated while their filename property will remain intact.

2. Havig AGS to give us an option to search for the first missing file, and after picking it in the new path it will try to search for the rest there as well - this is neat solution that exists in other programs like Adobe's; when loading a project and there are missing files that should be read from external locations on disk, which for example had been moved to another location, the program prompts about the first missing file and lets you browse for it. Once picking the file at the new path, it takes into account the new path and automatically search for the rest of the missing files there.

I think that the second option would be the best route, as this may also be usable not only for the sprite manager but for other sections in AGS which have an option to replace assets from source.
#3
The ability to grab a bulk of sprites in the Sprite editor and to assign them to a View is a very neat feature. Though, it lacks the ability to set a 'delay' to all of the frames if you need it.

In the game I'm working on, I need the walk animation of my character to run in an 'in-between' delay speed, which I can achieve only by setting a delay value for every frame of its walking animations. But since every of the 8 direction of my characters contains 18 walking frames, this is quite tedious to have to click on each and every frame in every loop for adding the delay value. So it could be nice if it could be added for all frames at the same process of assigning them to a view.

Thanks
#4
*** PROJECT DISCONTINUED - See latest update at the end of this post ***



Ripley's Believe It or Not!: The Riddle of Master Lu is a point-and-click adventure game based on Robert Ripley, the creator of Ripley's Believe It or Not!, which was developed and published by Sanctuary Woods in 1995. -Wikipedia.

I really liked this game back in the day, the same as I like it today, and found myself keep returning to playing it every few years from beginning to end. Though, the one thing that bothered me most is the fact that it lacks of any text captions; making it unplayable for players who cannot hear. The second thing that bothered me is that there is no way to skip scenes or dialogues; which makes it quite bothersome.

The main issue made me want to try and add captions to the game, however this task was found impossible, giving the fact that there is no access to the source-code of the game nor to the engine it was built upon. And as hard as I found, I wasn't managed (so far) to reach any of the original game developers or owners of the out-of-business Sanctuary Woods - which I'm still trying.

That is when I came up with an idea to actually re-create the game in AGS. I began the process to first test how it looks, and after days and nights of tedious work and completing its long introduction scenes, I can say that it turns out really good and truly looks and feels as if it was developed by the out-of-business Sanctuary Woods themselves! And at this point I think that it deserves a thread in the AGS Games in Production forum. So here it is!

* Please note that I'm still trying to reach and get approval to releasing this game – hopefully that it will be allowed to be shared for free, or at least that GOG could add it to their library and so I could offer them this captions version when its ready as a free-extra download for whomever purchase the game from them.

I currently work on re-creating the 'shareware' version of the game – as this can be shared for free like the original shareware is – and will update here once I have more to update. So keep tuned on this thread if this project interests you.

How does the Redux version is built?
I used some ripping tools that someone once wrote for ripping the game's assets, and also purchased Game Extractor which in the background use some of the mentioned ripping tools. The ripped assets include many BMP index files, which I converted into PNGs to save space, though many of them (especially animations) were not ripped correctly and have 'pixel-holes' in them. So whatever's not good enough I basically capture while playing the game in an emulator (without any compression). Then I crop the areas of action and make them GIF animation files. And finally, I import these GIFs into AGS and arrange them in Views.

The thing that did ripped correctly is the locations background (index BMPs) and the RAW audio (which is basically a WAV format) that I converted into OGGs to save space as well.

I've arranged all the audio files in an Excel sheet, and then listen and categorize them on-the-fly with filters, while also typing the caption of everything that is said in them; this process involves the listening feature of google translate for listening to the spoken audio – as not everything is cleared – and of course my own judgment checking if whatever was translated is actually correct, where if not I use other online dictionaries for checking and comparison, and then fix the necessary things that google translate got wrong. At the same time, I'm also translating the game to Hebrew (my mother tongue) as it would be a waste not doing so if I'm already going over 4K+ audio files.

All these 'pieces' become into a 'puzzle' of over 50,500 graphic files, and an addition 4,247 audio files. And I build this puzzle together in AGS and make all the necessary scripting from a complete scratch to make the game look and feel as close as possible to the original – only with the addition of text captions and skipping cut-scenes/dialogues possibility, which are the main reasons of why I've began working on this project in the first place.

Any comments and suggestions would be most welcome! And if someone has any relation or way to communicate with the original owners of the game and its intellectual proprietary, I'd very appreciate to know so I could begin working with them to get the necessary approval to releasing this re-release in the end.

* A side note – I'm not doing this for money and make this project voluntarily and completely for free, to bringing this masterpiece first for those who couldn't play it because they can't hear, and for returning adventurers who'd appreciate to re-play this game with captions – while making the captions, I myself now get many things that I didn't hear or understand correctly when I originally played it . So I suppose others would too.

Attached some screenshots from the process.





And here's a short video demonstrating how I prepare the animations for AGS:

10/09/2023 UPDATE:
Dealing with a huge amount of sprites can be a tedious task - but it can be a breeze with the help of some automatic scripting. I've made a short video demonstrating a recent discovery of mine about the ImageMagicK tool, and how I use it to prepare the sprites for importing into AGS. This tool includes so many features that I really got lost and it took me quite some time to find the appropriate functions that I needed to make it work for my needs.

12/09/2023 UPDATE:
A package from over seas has just arrived - it's the official player's guide of the game; read in some FAQ walkthrough that someone wrote that back in the day - before the commonly internet access in every house - you had to buy one of these if you got stuck in games. When I found this one on eBay right afterwards I immediately grabbed it. I expect that it would probably be a good reference book when re-creating this game.


In addition, I've capture today the full introduction from the re-built game which shows how the English captions look like. You may find it here (game resolution is 640x480 - it was sharply upscaled x3 for best viewing experience on YouTube):

For those of you who speak Hebrew, this is the same intro with Hebrew subtitles (Hebrew font by me):

14/09/2023 UPDATE:
In this video I describe the making process of the captions along with translating them - this is a technique I developed myself which helped me a lot when translating other games:

02/10/2023 UPDATE:
It appears that my good will to reproduce this game had encountered with some problems that I thought I could overcome, though eventually found they're just too much to handle. And so instead of having a good time re-producing this game, it turned into something un-pleasant and very exahusting - the good thing is that I'm only at the very beginning on the game. There are 2 main problems:

1. The ripped sprites have an index color 0 (pure black) as the background, while the same color is used in the actual sprites of the characters and objects - meaning that when the sprites are imported and this index color is considered as transparency, it also makes 'pixel-holes' within the actual sprites, which requires manually painting them over.

2. Each of the animation sprites has its own dimentional size, which requires manually aligning each and every sprite when re-building the animations.

These two main issues might not have been a problem on a regular 2D game where there are only a few sprites to handle. Though in this particular game there are dozens and hundreds of sprites in almost every animation sequence, which makes it a tedious process to re-create.

Sorry if this last update is such a disappointment - I'm disappointed by this as well. However, there is a bright side for everything. The first one is that I learned new scripting methods in AGS, which I'm surely going to use when working on my
next project. The second thing is that during the re-creation of what I did so far, I found and reported about bugs and new feature requests for the AGS editor, which mostly (if not all) were fixed and implemented in the coming 3.6.1 update by @Crimson Wizard. In addition, I managed to reproduce and release a nice grayscale pause module - very similar to the one that exists in 'The Riddle of Master Lu' when taking / viewing inventory items! This couldn't be done without the help of @Nahuel and @Crimson Wizard too. You can find it here.
#5
Just found that GUI labels text can only be aligned to either left, center or right, while buttons text on the other hand has the flexibility of aligning their text to every edge and corner of its boundaries. I think that it would be nice if labels could have the same flexibility.

Besides, I think that labels and any other element that can utilize text should also have the properties that Fonts have, such as OutlineStyle, AutoOutlineStyle, AutoOutlineThickness, LineSpacing, and SizeMultiplier... I found this missing when I tried to use a text label as a static speech text location, which works quite nice yet missing these features to look better.

Thanks
#6
Hi everyone,

Just encountered this one and found that it actually hangs the editor on that dialogue until all messages are accepted (the only option in the dialogue to click upon).

When trying to delete frames in the Sprite editor, AGS reports you about frames that are in used in 'Views' and that they cannot be deleted - which is all fine and dandy when you're  trying to delete a single or about just a few frames. However, if you try to do so for a bunch of frames (say 100+), the editor will prompt you the 'Cannot delete sprite because it is in use' dialogue for each and every frame, where only an 'OK' button and an 'X' which does the same thing are available for you to closing the dialogue window that is related to a specific sprite. So basically, you're getting stuck in a situation where you have to accept each and every dialogue to get it out of the way and to get back to the editor.

I think that a 'Cancel operation' button should be integrated in this dialogue for stopping the deletion process from memory and closing the dialogue in a single click.

Thanks
#7
Here's the thing:

When debugging my game, I wish to keep track on the volume when my music, ambience and sound effects are playing. For this, I have to also keep track on which AudioChannel* variable type I set for playing them. So I've created 3 global variables of the AudioChannel* type for this purpose, for setting to play my sounds, as follows:

- globalChannelMusic
- globalChannelAmbiance
- globalChannelSFX

In my debugging GUI, I've created 3 labels to represent their Volume, as follows:

- lblMusVol
- lblAmbVol
- lblSFXVol

In my 'repeatedly_execute_always()' function in my Global Script, I've wrote this code:

Code: ags
if (Game.IsAudioPlaying(eAudioTypeMusic))
  {
    lblMusVol.Text = String.Format("Music Volume: %d", globalChannelMusic.Volume);
  }
  else
  {
    lblMusVol.Text = String.Format("Music Volume: 0");
  }
  if (Game.IsAudioPlaying(eAudioTypeAmbientSound))
  {
    lblAmbVol.Text = String.Format("Ambiance Volume: %d", globalChannelAmbiance.Volume);
  }
  else
  {
    lblAmbVol.Text = String.Format("Ambiance Volume: 0");
  }
  if (Game.IsAudioPlaying(eAudioTypeSFX))
  {
    lblSFXVol.Text = String.Format("SFX Volume: %d", globalChannelSFX.Volume);
  }
  else
  {
    lblSFXVol.Text = String.Format("SFX Volume: 0");
  }

Now, I'm not sure what happened, but in the first room that a sound effect is playing on a specific frame, the label changes to show its 100% volume without any problem.

In another room, I've did the very same thing (copied and pasted the code) and set it to play a different SFX. However, immediately when the sound effect is playing, it gives me the 'Error running function 'repeatedly_execute_always': Error (line 38): Null pointer referenced'.

I really don't know what happened and how come that it works in previous rooms and in the new room that I'm working on now it doesn't. I've checked the imported sound effect asset and it is set like the others as a SFX type. What am I doing wrong?

Thanks

EDIT:
I've found that if I run the game from the very beginning, the game does not crash. But if I set my player character to start in the current room I'm working on to test it from there, it crashes when the SFX is playing...
#8
Hi everyone, hope you're all doing well.

I've posted this in the 'Beginners' Technical Questions' forum and was suggested to report a problem here. Would appreciate if this could be fixed:

The current Project tree has a behavior of auto-collapse of folders in certain sections, such as in VIEWS and AUDIO.

If for example you create folders in these sections and then drag and drop assets from one folder to another in the same section, all the expanded folders in that section get collapse, and only the one that you dragged the asset into opens / remains open. This makes organizing of assets very difficult, especiallly if you have many sub-folders.

As far as I've checked, this happens in the VIEWS and AUDIOsections, and I just tested if it happens in the CHARACTERS section and it does - so I guess that it behaves that way in any place in the Project tree that can have folders in it.

Thanks
#9
Hi everyone,

I tried searching for the keywords 'collapse project tree folders' but it didn't give any results. So posting this new thread in a question. If it was already asked or reported somewhere else then kindly direct me to the appropriate thread. Thanks in advanced! :)

It appears that the project tree has a behavior of auto-collapsing of folders while dragging assets around, which makes it quite difficult organizing things in the project tree panel.

If we create folders in the VIEWS or AUDIO sections, and then want to drag assets between folders in given section, all the expanded sub-folders of the same section, apart from the one that the asset is dragged into, get collapsed. Obligating you to re-expand the folder you were working in to keep dragging assets from it.

I mainly find it difficult when working with AUDIO assets, which I tend to change and wish to update them in the different AUDIO folders. Since there's no way of replacing or deleting multiple audio assets, it is needed to delete them one-by-one, which also collapes all the others folder but the one you delete the audio asset from. And if you organize your audio in a 'scene' manner and have many sub-folders this makes things even worse, as you need to re-dig into the bottom most one to reach the assets that you wish to delete for re-importing...

Is there something that can be done to bypass this?

I like the way that the new audio system in AGS works, especially the audio types which you can set with different properties and control individually. Though, I wish that I could manage my audio assets externally and not need to import them into AGS - I know that a huge amount of work has been invested into making the new audio system, and so I'm not saying this in a non-appreciated way.

Personally, I find that whatever assets that you can organize outside of the AGS editor is easier to manage. Because, if for example I modify an audio file or replace it altogether, the change automatically reflects in AGS, and there's no need to import anything into the editor and to manage the audio assets in both the local folder and the editor. Which makes organizing things easier in my opinion.

I'm just thinking aloud here. I really don't know what it involves to change such things in the editor. So I just bring this up, and would like to know how you guys work or prefer to work with your audio files - do you still use the old fashioned way of numbering your audio files in external folders on your computer and set AGS to play them, or do you use the new audio system and import your audio assets into AGS?
#10
Hi everyone,

I searched in the forum but didn't find anyone asking about this.

I'm using WFN fonts; 'Font 1' is the actual font where 'Font 2' is its outline. The thing is, the font is quite narrow, and so an outline around the letters kind of "close" upon the font, making it look even narrower... So I checked the Font 2 properties and saw that there's a VerticalOffset property, which works great for offsetting the font vertically. Though, I also wish to offset it horizontally, but there's no built-in option for that...

So, is there a simple script way to setting this up? (and if there's an option to make the outline font a little transparent that would be even better!)

*I know that I can edit the outline font, letter by letter, and to position each in a way that it will look in an offset, but that too much work and it won't give the freedom to dynamically change the angle of the outline font if I ever want to simple tune it.

Thanks
#11
Hi everyone,

Is there a way to show the Character.SayBackground function at a specific X and Y position?

I have a sound clip of a few characters saying something together, and I use Character.SayBackground in order to present the said text above each of the characters' heads, which works great. However, one of the characters has a huge gap of transparent area in his graphics (not something that I can change now as it will affect the entire game). So I just wish to show his text in a non blocking way a little lower, in relation to his y position.

Thanks
#12
Hi everyone,

During my current project upgrading a friend's game from AGS 2.72 to AGS 3.6.0, I've noticed that some functions doesn't work. Digging in the code I've noticed that is seems like back in AGS 2.72 there was no need for 'else if' statements, and that you could just write your bare 'if' statements one after the other, and the engine checked them from top to bottom, skipping what's 'False' and continuing to the next check.

That behavior is not working in AGS 3.6.0, and if you have more than 1 'if' statement in a given function, only the first one is checked while the second one and beyond below it is ignored, as it should be 'else if' and not just 'if'. Problem is, during the migration process the scripts didn't update all the 'if' statements that should be 'else if'...

Should it had? Or that we need to manually set every 'if' statement that comes after the first one in a given function 'else if' in all of the functions?

Thanks
#13
Hi everyone, hope you're all doing good. :)

I'm working on a friend's game from 16 years ago, which was developed in AGS 2.72. The game didn't had subtitles in it and I'm working with the creator to making subtitles to it.

The thing is, many audio files are very long, as there was no need back then to divide the speech to fractions for showing only a few lines on the screen at a time, because as I mention there was no subtitles meant to be in it. So over-head subtitles are not the best option here, as the text in most cases will cover the entrie screen.

So I'm thinking about making a custom speech function in a form of a text box, that will be located at the bottom center part of the screen, and that the text will automatically scroll up within it. The text should also 'feathered' from the bottom and top edges of the text box - very similar to how speech is shown in many RPG games like Diablo. But the text color should still be based on the speech text color that is set for each character.

Attached a screenshot of what I mean:



I would like to know what would be the best way to achieving such custom speech function. But I must mention that due to the age of the source code, I had to tune some compatibility properties in the General Settings, or else the game gives a lot of errors.

These are the backward compatibility settings:
- Allow relative asset resolution: True
- Enable mouse wheel support: False
- Enforce new-style audio scripting: False
- Enfore new-style strings: False
- Left-to-right operator precedence: True
- Script API version: 3.2.1
- Script compatibility level: 3.2.1
- Use low resolution co-ordinartes in script: True
- Use old-style custom dialog options API: True
- Use old-style keyboard handling: True

Many thanks! :)
#14
Hi everyone,

I'm helping a friend to migrate his game from AGS 2.72 to the recent official 3.6.0 release. I've managed to overcome many issues while migrating from one version to the other, until I'm finally able to run the game in the recent release.

The main tedious problem I found so far was that I had to re-write the names of all of the rooms, as they were in Hebrew and in the recent version of the editor they appeared as gibberish. And just copying the original Hebrew text from the old editor and pasting it in the new remained in gibbrish. So that's done now. But I'm still facing issues displaying the Hebrew game name correctly.

Currently, the game name in the title bar and in the Setup window, which was originally showing correctly in Hebrew, appears in gibberish. In addition, I've just found that even the 'Save games folder name' under 'C:\Users\%username%\Saved Games' doesn't show correclty but as 'dashes' ( ________ ), instead of a Hebrew name.

I've went through the General Settings and found that the game was originally set to text format: ASCII / ANSI. However, I find that it uses TTF fonts in the game folder (as the agsfnt0.ttf and agsfnt1.ttf files are present there).

I found that the only place that uses these fonts within the game is the save/load GUI. If I run the game as it is, the GUI shows in Hebrew correctly. But as I mentioned, the game title at the top bar of the AGS window shows in gibberish. However, if I change from ASCII / ANSI to Unicode (UTF-8), the game title shows correctly (while the title of the Setup window still remains in gibberish), but then the save/load GUI now shows in gibberish...

So far I've changed the game to show its text in Unicode (UTF-8) and overcame many of the issues in the scripts - which in include Hebrew strings in them, and most of the game is now showing correctly, apart from the title matter which probably also affects the name of the games save folder.

Would appreciate any assistance.

Thanks
#15
Hi everyone,

I'm working on a game with digitized actors (a lot of frames) and willing to play certain audio clips such as gun shots and other effects on specific frames.

I'm aware that I can use the view editor for adding sound at the exact frames that I want, but the process becomes very exhausting when dealing with loops that have dozen or hundreds of frames in them, as seeking for each frame in the view editor is way too slow, and also requires me to leave the script I'm working on and to go back to editing the view and slowly look for the frame I set a sound on for tweaking or changing it.

Therefore, I'm willing to call for the audio files to play from within my scripts, where I could easily tweak them as I want in a much faster way.

I've set my view animation cutscene to run at the delay of 3, and then under the room_repExec() function I put a check for the frames that I wish to play audio files on, like this:
Code: ags

function room_RepExec()
{
  if (oEgyptRun1.Frame == 126)
  {
    aGUNSHOT1.Play(eAudioPriorityNormal, eOnce); // first gun shot
  }
  else if (oEgyptRun1.Frame == 149)
  {
    aGUNSHOT2.Play(eAudioPriorityNormal, eOnce); // second gun shot
  }
}

The problem is, the audio clips play multiple times instead of only once, which I trust is due to as long as the frame I'm checking is showing on the screen (based on the delay that it runs in).

Is there a way to make it play the audio clip only once?

Thanks
#16
Hi everyone,

Didn't found that anyone has reported about this so I want to bring this up.

When working in the Views editor, selecting a frame box in a given loop changes the selected frame in the Properties panel, which is great. However, it does not change to that frame in the Preview which is essential for seeing what frame you're working on when you're dealing with high res graphics with small details.

This makes the process of seeking for a specific frame for adding audio very difficult, especially when the view loop has a lot of (not very small) frames in it, which already takes about a second for changing from one frame to another.

Is there a way to make the selected frame to sync in the preview panel, and to also make it work vise versa when manually changing frames and loops with the small arrow buttons in the preview panel, so the current frame that shows in it will be selected in both the row of frames of the loop and in the dropdown list of frames in the properties panel?

I'm aware that this might make the entire View editor to perform even slower then it already is when working in high res graphics and a huge amount of frames, but perhaps we can have an option to turn such sync feature on and off? Or instead to just have an input box for writing the frame number that shows in the preview to select it, or to have another button in the preview panel for selecting that frame. I think that an input box or a button will be the more effecient way in terms of performance.

Thanks
#17
Hi everyone, hope you're all doing well. :)

Trying to do something that should be really simple:
1. Play an audio file of some loud wind.
2. After about 2 seconds, to make the wind sound decrease its volume gradually from 100% to about 50%.
3. Play a speech file.

I tried doing it manually but then read that the Tween module can be used for this. However, when I import it to my project, the moment I test my game (without writing any code related to the module yet), it gives me this error message and takes me the module script:
 
Tween1.asc(1275): Error (line 1275): Undefined token 'inventory'

The code in line 1275 is: inventory[this.RefID].SetProperty(this.StringRef, _value);

If I remove the module and test my game it runs successfully. It's only when the module script is present in the top of the Scripts tree that it gives this error.

Any help would be appreciate. And if there's another recommended way to achiving what I'm after I'm open to hear and learn.


Thanks!
#18
Hi everyone,

Just encountered this when trying to import an animated GIF of 514 frames - working on a game with plenty of sprites (digitized actors footages). During the import, it gave me this message which suggested to post it on the technical forum. No idea what it means apart from that it has to do something with memory - just want to mention though that I have 64GB of RAM and most of it available.

I also wish to mention that after closing and re-launching AGS and importing the same GIF file again, the process finished without any problem.

Thanks

Code: ags
Error: memory allocation failed `' [member=0][/member] error/quantize.c/QuantizeImage/2713
Version: AGS 3.6.0.50

ImageMagick.MagickResourceLimitErrorException: memory allocation failed `' [member=0][/member] error/quantize.c/QuantizeImage/2713
   at ImageMagick.MagickExceptionHelper.Check(IntPtr exception)
   at ImageMagick.MagickImage.NativeMagickImage.WriteStream(MagickSettings settings, ReadWriteStreamDelegate writer, SeekStreamDelegate seeker, TellStreamDelegate teller, ReadWriteStreamDelegate reader)
   at ImageMagick.MagickImage.Write(Stream stream)
   at ImageMagick.MagickImage.ToBitmap(ImageFormat imageFormat)
   at AGS.Editor.Utils.SpriteTools.<LoadSpritesFromFile>d__0.MoveNext()
   at AGS.Editor.Utils.SpriteTools.ImportNewSprites(SpriteFolder folder, String filename, Boolean alpha, Boolean remapColours, Boolean useRoomBackground, SpriteImportTransparency transparency, SpriteSheet spritesheet)
   at AGS.Editor.SpriteImportWindow.DoImport()
   at AGS.Editor.SpriteImportWindow.btnImport_Click(Object sender, EventArgs e)
   at System.Windows.Forms.Control.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnClick(EventArgs e)
   at System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent)
   at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ButtonBase.WndProc(Message& m)
   at System.Windows.Forms.Button.WndProc(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
#19
Hi everyone,

Trying to solve this one out myself but kind of stuck...

I'm willing to keep the mouse cursor visible with the 'Wait()' sprite when Fade-In and Fade-Out transitions are playing. But Can't find a way to doing so - whenever a fade is playing, either by the 'player.ChangeRoom()' function or manually by using 'FadeIn()' and 'FadeOut()' functions the cursor gets hidden.

Thanks

EDIT:
Not sure if this is the right way to doing it, but I just ended up making a hidden 'gWait' GUI that I set with the Wait cursor sprite and size, and set it to follow the X and Y positions of the mouse cursor in the repeatedly_execute() function. Then I made a custom function that is called when clicking on the main menu buttons, and in it I set the 'gWait' GUI to show up, then I set a FadeOut() transition to play, and right after it before changing the room I made the 'gWait' GUI to be hidden again.
#20
Hi everyone,

Not sure if it's a bug, but better get a reply that it's not than not reporting at all:

When the 'player.ChangeRoom()' function is used along with the default 'FadeInAndOut' behavior, and a certain sound is set to be played just before changing the room, the sound doesn't play but only after entering the changed room.

For example, I made a click sound for buttons on a main menu screen, and set it to play right before the player.ChangeRoom() function. The click sound however plays either when the fade-out is finished or when the changed room is loaded (I can't tell). But if I set a FadeOut() function manually and afterwrads put the player.ChangeRoom() function then the sound plays correctly upon pressing the button.

Thanks
SMF spam blocked by CleanTalk