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
Hi everyone,

I just updated my AGS profile and realized that the LinkedIn username link which can be added in the Forum Profile section is actually direct to AGS forum, instead of to LinkedIn.


I also just noticed that the symbols are suddenly showing too small. Checked in another browser as well.
#2
Hi everyone,

Following my update on Discord, I would like to share with you all that I've finished working on my Sierra AGI-style template, and that it's ready for everyone to use!

*** PLEASE NOTE ***
This template and its DEMO game were originally created on AGS Editor build 3.6.1.24 while newer releases may be in even newer build versions! (refer to the change log below). They will NOT work on previous version of the editor! If you ignore this warning and tried to use it in an older editor version than the build number mentioned above, it will make your AGS editor crash and lock itself in your operating system processes. This of course could be solved either by killing the process manually or by restarting your computer. You can install the current AGS editor build side-by-side with an older version on your system, only make sure that you don't install it on the same directory where the older version is installed. And most importantly, when the AGS setup ends, it will ask you if you wish to make it the default program to opening your AGS source files - make sure to NOT select that option, so you won't end up double clicking on your current projects and then opening and saving them in the newer build!


If you ever wanted to make an AGI-style game in AGS but didn't know how or where to start, this is the right template for you; all the initial setup to making an AGI-style game is already done in it, so you could focus on making your game and not worry about the logic behind the scenes, unless you want to modify something in the core logic of the template.

This AGI-style template includes some extra features which original AGI games didn't have. To name a few:

- A SCI interpreter mouse cursor (used for navigating the menus and more below)
- Label over hotspots.
- Left mouse button to walk around.
- Right mouse button on interaction areas for looking on them.
- Middle mouse button (or right mouse button when not on a hotspot) to open the inventory.
- Any click on an inventory item to examine it or not on an item to close the inventory.
- Modern Save / Restore / Restart / Quit dialogues.
- Dark mode GUI(s).

I also made a very short DEMO game which presents what you can make with this template. It consists of one room, a SCI-style character that I drew over a decade ago and never put into use, which I converted into AGI-style for this specific project, and a few things you can pick-up and do using the parser.

Source codes for both the template and its DEMO game are also provided for your reference, if you ever wish to learn how they were built.

While viewing the source code, you'd probably find that there's a better way to doing varies things that I coded. You're more than welcome to change the code to your liking, but please do not share/upload a modified version of this template, as I wish it to be consistent and accessible from one place; if you have suggestions for improvements, you're more than welcome to let me know and I'll consider adding them to a next release.

You may find it all on my Dropbox. I suggest to view the README file in the Templates directory there, and also the README file in the ZIP archives.

To install the template in AGS, download the 'Sierra AGI-style.agt' file and place it in the 'Templates' folder under your AGS installation directroy (by default it would be C:\Program Files (x86)\Adventure Game Studio x.x.x\Templates). You should then see the new template when selecting to create a new game.


If you're just learning AGS and/or make a non-commercial game, you are welcome to use the assets I created (you may find them in the 'Resources' folder in the 'Source' directory). However, if you create a commercial game, you are not allowed to use my assets but only the template itself to creating something original of yours.

If you have any feedback about this template, bug report and/or suggestions for improvement, feel free to reach me here or on the Discord channel. Though on Discord your messages could get burried after newer messages, so this forum page would be the best place. Here, others can mark your bug reports, suggestion, etc. with thumbs-up, so I could estimate the urgency for fixing or improving something you reported about.

DOWNLOAD LINK

Attached a few screenshots:









Changelog
=========
Version 1.4.0
Released: 31st July 2024
- Fixed clicking with the mouse on inventory items to looking on them.
- REMOVED: right mouse button on interaction areas for looking on them (see details below).
- REMOVED: bug message on launch in translation mode, as it no longer occurs since right-clicking to look on things has been commented out.
- Help menu (F1) was updated regarding the removed feature above.
- README file was updated regarding the removed feature above + added more info about creating new empty rooms.
     * I found that when you wish to have more than one hotspot / object by the same Description name in a given room, and wish to have different feedback when looking on them based on where the player stands, clicking on these interaction areas when the player is not in the proper position will trigger the look_rol messages instead, and the players won't know that they need to get closer to the interaction area before trying to look on it with the mouse, unless you code a message that tells them to get closer in such cases. To prevent this scenario and confusion, the right-click to look on interaction areas was commented out! You may uncomment the code if you wish to use this feature in the Global Script.

Version 1.3.0
Released: 24th July 2024
- Parser.ParseText(""); for preventing ROL from running were replaced with return; or break; when required.
- Added forgotten "you don't have it" feedback when looking on possible inv items that you don't have.
- Fix "You already took it" feedback when trying to re-pick an item.
- Fixed instructions in room comments and README for jumping to ROL bits from within room statements that doesn't meet anymore.
- Version within the template name was mistakenly typed 1.2.0 and was fixed to 1.3.0 on 31st July 2024.

Version 1.2.0
Released: 22nd July 2024
- Translation files support including Right-to-Left.
- English font spacing fix.
- New original Hebrew font.
- Hebrew synonym words added to the parser.
- All GUI(s) and menus were adjusted to accomodate the font spacing change.
- Max inventory items decreased from 28 to 26 due to font spacing change.
- Removed the Parser and Save built-in text boxes elements and replacing them with custom ones based on labels.
- Adding offset conversion from Unicode character input to ASCII for using the 256 characters WFN font (currently only for Hebrew; offsets for other languages could be easily added in the source code).
- Menus and sub-menus width now wraps the text based on text pixel width, and all menus adjust their position based on neighbor menu item width (mainly for translation purposes).
- Score label was broken down to 4 different labels, which now shift their position in relation to each other when score number increases.
- Varies script logic fixes.
- A new 16-color Aseprite palette for making room masks, this time in 8-bit.

Version 1.1.0
Released: 19th July 2024
- Upgraded to AGS Editor build 3.6.1.26.
- Fixed synonym mix between 'door' and 'breath'.
- Fixed F3 repeat string crash when equal to null.
- Removed F3 repeat string when equal to "".

Version 1.0.0
Released: 13th July 2024
Notes: Initial release of this template and of its DEMO game on AGS Editor build 3.6.1.24.
#3
We all get to a point where we can't find outselves in our scripts. I was recently tought that we can use what is called a "#region [region name]" to define a certain part of our code, to end it with "#endregion", and then we could collapse all the section from our eyes using the plus icon next to it.

The issue is that the editor doesn't save these collapes items, and the moment you close the script tab and then re-open it, eveything is expanded again.

This is the same way if trying to collapse functions and other blocks of code that have the plus sign next to them.
#4
The 'OnSelectionChange' event name doesn't describe its behavior correctly, as in general, a selection change event name describes a scenario where it should trigger an event the moment the selection is changed (using the arrow keys on the keyboard to navigating from one item to another from example). So this is quite misleading, as it actually triggered the moment you click and release the mouse button on a ceratin item. So the event works okay - it's just that its name is not accurate. Should be 'OnItemClicked'.

On the same time, I think that if there could be another property there for 'OnEnter' for example to selecting a list item using the keyboard could be a very nice add-on, as currently we have to doing so manually using the on_key event.
#5
When exporting items from AGS, it doesn't auto rename the filename. So you have to type the file name yourself. In addition, once the export is saved, AGS doesn't remember the last path you saved from its editor, and so on the next export it takes you to the current folder of the game's you're working on. I suppose that this scenario is the same in other places in the editor where the operating system file browser is involved. It should remember where you last been.
#6
Currently, we can only use \n escape sequence to making new lines within text elements. But if you'd wish to align some left to right text to the right-hand side of the text box by using \t for tabs it doesn't work. An example of how this would be useful is an context-menu GUI where you want to present the keyboard shortcuts of each option in a straight aligned line from top to bottom to the right side, while having the text aligned from left to right:

File    <F1>
Edit    <F2>
View    <F3>
...

Using spaces for this alignment doesn't work very well, unless the font you're using have an exact width for any of its characters, including of the space. So in some lines the alignment would show broken (just as showed above where I used 4 spaces between the words and the first < sign. In text editors, when hitting TAB after words, it automatically completes the desired spacing until the next TAB point, by either subtracting the words length from the amount of spacing that a TAB consists, or if the word length is more than 1 or more TABs, it completes the number of spaces until it reaches the next point where a new TAB should start.

It seems that each text editing program has different amount of spaces for a TAB character. A TAB in Notepad++ for example consists of 4 spaces, and in the regular Notepad in Windows, a TAB is consist from 8 spaces. But the general idea is the same: when you use TAB in any of these programs after words, it subtracts or adds the character amount of the word from the next TAB, until it reaches the next TAB position, where all lines could eventually be aligned for showing the further text vertically straight.

word Let's say that a tab- if the word is in text editors
#7
If you use Win10, you'd find that dragging of tabs from right to left works, but doing so from left to right is somewhat broken. If you have 3 opened tabs and you wish to move the first tab to the most right, you won't be able to do that unless there's another tab after it and you're dropping the tab in-between those tabs.
#8
It seems like there's no "quicker" way to get selected string. Like having a ListBox.SelectedItem property in the dropdown list.
-Fixed.
#9
When creating a listbox item, the default value of the property SelectedBackgroundColorNumber for black is set to 16, where the SelectedBackgroundColor above it shows 0,0,0, which is incorrect. Selecting the SelectedBackgroundColor property and hitting Enter on the 0,0,0 value changes SelectedBackgroundColorNumber to 0, which makes the text transparent. So the two properties don't seem to share the parallel color index.

In general, the SelectedBackgroundColor shows the color in its RGB form, where the SelectedBackgroundColorNumber proabaly shows them in index color numbers, and the higher numbers in it don't make any sense.
#10
Currently, only the listbox GUI element have the highlighted background and highlighted text color properties, along with a border color option. Labels on the other hand does not. It would be nice if all GUI elements that use text could have these properties in them.

In addition, the only GUI element that can align text to all possible edges of its bounderies is buttons. Others can only align to either left, center or right.
#11
The Parser section seems to be one of the things that were least improved in AGS since it's very beginning. It would be nice if it could be improved as follows:

- Abiltiy to multi-select words for deletion or for changing their type (ignore / normal / synonym).

- Ability to have the Delete key affect the selection of words in the list, and to prompt the user for deletion or for a type change. Currently it is only possible to right-click to delete, and it doesn't even prompt if you're sure that you want to delete the word if accidently clicked instead of "Add synonym / new word".

- Add option option to add an ignored word in the right-click context menu instead of needing to right-click on an existing ignored word and to add a synonym to it.

* The entire Parser could actually be replaced with an external text file for adding/editing words and types, instead of needing to edit everyting direclty in the editor.
#12
The default behavior of the built-in inventory window is to present the added items from top left to the right, and when there's no more room it goes down a line.

It would be very nice if we could set it to either start from right to left, or even from top left / top right to bottom, and then to set its borders how we like and the items would be presented accordingly.

For example, a 2 lines inventory window where you want that the first item will go to the top left slot, the second to the bottom left slot, the third to the right of the top left slot, and so on.

In addition, for texed based games like an AGI-style, it would be nice if we could also make the items show as text by showing their names instead of their icons, or even both. The text should have an option to select a font to presenting it, and also have listboxes properties such as alignments and highlighted background and highlighted text.

* Instead of rasing another thread for this as this is of the same matter, the alignment behavior should also be added to listbox items which basically works the same way of storing items in them. So we could either have list boxes that show items in the current form of top to bottom, or to have them showing from left to right, right to left, or even in reverse order from bottom to top.
#13
When using a for loop to adding items to a list, like so:

Code: ags
function sync_list()
{
  mylist.Clear();
  for (int i = 1; i <= Game.InventoryItemCount; i++)

  {
    if (player.InventoryQuantity[i] > 0)
    mylist.AddItem(inventory[i].ScriptName);
  }
}
If the
Code: ags
i <= Game.InventoryItemCount
is replaced with < instead of <=, it does not add the second item to the list when it is triggered.
#14
In AGS 4.0 there's a very nice feature that allows scaling of GUI elements during runtime - meaning that a GUI can be created in a 1:1 aspect ratio and then presented in 2:1 for example wen the game runs for an AGI style look, the same as when setting a room to 160x200 and then make it scale twice as wide to fill a 320x200 resolution, using the viewport scaling option.

Also, since Mouse cursors behave the same as GUI(s) in terms of lack of scaling options in the current build, it would be nice if we could also affect the mouse cursor sprites so they too could be scaled on runtime.
#15
Hi guys,

Not sure if anyone would be interested in this, but if it's not too much to ask maybe others like me would appreciate it.

I'm trying to make a short game in all the historical graphical Sierra styles games, which are AGI (running in 2:1 aspect ratio in 16 colors), SCI (1:1 aspect ratio in 16 colors), and AGS (1:1 aspect ratio in rich colors).

However, I found that if I draw my graphics in Aseprite in 2:1 aspect ratio which is natively supports, I need to resample the images when exporting them so they would stretch twice as big horizontally before importing them into AGS, or else they would look narrow. So I wondered if there's a way to have an aspect ratio of 2:1 in AGS but then found that there is none...

Resampling the sprites and backgrounds may statically look good, but the overall gameplay experience would still behave in a 1:1 manner, meaning that when the character moves it would move 1 pixel instead of 2 when walking to the sides, breaking the feel of an AGI style game.

There's another feature request that I just posted for having an AGI style game feel (here), so we'd be able to set the characters to stop on any of their Walking cycle frames, and not only on the first frame (ID 0).

I really don't want to start learning the out-dated AGI Studio engine for a small game only to achieve its feel, and would prefer it if I could make it in AGS where I'm more comfortable with.

Of course, the Room Editor with all its drawing tools should also work in the 2:1 aspect ratio, so I'm really not sure what such feature request involves. However, if it's possible and not too much work it would be nice to have in AGS.

Thanks
#16
Hi guys,

Was trying to make an old AGI/SCI style game and found that there is no option to have the characters to stop on any of the Walking loops frames - when they stop, they loop back to the very first frame (ID 0), and in some scenarios such as on occassional bumps into obstacles, the walking animation looks a little funny when it keeps jumping to the first frame of the cycle.

In AGI/SCI games, when you stopped the character from moving or if you bumped into an obstacle, the character would have stopped at the very frame they were at, making the walking cycle to look more continues and not jumping to the first frame on every stop.

Thought that it may be nice to have a feature that we could toggle between having characters to loop back to the first frame of the cycle, or to have them stop at the frame they're at.

Thanks
#17
Hi guys,

A minor suggestion: when clicking on a frame in the View Editor and hitting the Delete key to remove the frame, the frame selection box disappears, requiring you to re-click on the next frame if say you wish to remove more than just one frame. Yes, you can use the Shift key to select multiple frames and to then delete all of them in one go, but one may just want to either delete frames one-by-one by re-hitting the Delete key, or perhaps to have the key repeatedly pressed-down to remove a bunch of frames further from the frame you're standing on, without needing to scroll horizontally to do a multiple selection.

I think that when hitting the Delete key, the frame selection box should remain in the same place if it's not the last frame. And if it is the last frame then it should move back one frame. Of course, it should have a small delay in the code so it doesn't do double-deletion of frames, unless the key is repeatedly pressed-down for say half a second where it should then do a fast deletion.

Just a small improvement. Again, not a big deal to do a multiple selection and delete. But just thought it may be good to bring this one up.

Thanks
#18
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 exists in an old adventure game that I'm currently re-producing 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
#19
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.
#20
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
SMF spam blocked by CleanTalk