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

#2921
Quote from: Amir on Tue 07/06/2022 18:30:33
Quote
Wait, is the problem mouse lock or speed? or both?

I guess mouse lock  ;-D I just meant it's slow because it's not locked to my window, my mouse is faster.

Sorry, but I'm still not sure what do you mean. Is cursor movement in game is slower than the movement of the system cursor?
#2922
Quote from: Amir on Tue 07/06/2022 16:34:09still so slow at Default, not like my mouse speed.

Wait, is the problem mouse lock or speed? or both?
#2923
Does it depend on how do you run the game (from the editor, from built exe, and so on)?

Also, Ctrl+Alt combination toggles the lock, do you press it for any reason during the game?
#2924
Quote from: Amir on Tue 07/06/2022 16:02:56
and what about the mouse? Is there also a new function? it dosn't lock to window.

I just tried it in a random 3.5.1 game, it it works if i check the option in the winsetup, in "Advanced" - "Mouse options". Is this how you do that?
#2925
Quote from: Amir on Tue 07/06/2022 15:49:01
Quotecall System.SaveConfigToFile() if you want to write current game options to config file.

Where? I put it in game start and still have the problem, it always stays at default in winsetup. as I said you will have german main menu but the whole game is in English when you start the game again.

This function saves the current settings state. So you need to call it after you changed the settings.

Quote from: Amir on Tue 07/06/2022 15:49:01
That was handy. I had no problem with that.

Other people had, and complained, so I had to make this change.
#2926
Quote from: Amir on Mon 06/06/2022 21:18:15
When I use Game.ChangeTranslation("English"); the translation does not change in winsetup and in the game as well, when I change it and exit the game then start it again, it hasn't changed.

Game.ChangeTranslation is meant to only change translation in the current running game. It does not change anything in game config, therefore won't automatically be saved for winsetup or next game.
In the few earlier versions (I believe somewhere between 3.3 and 3.4) engine would automatically save config on exit, but that was disabled around 3.5.0 after complaints that engine writes over config unexpectedly.
Since 3.5.1 you need to explicitly call System.SaveConfigToFile() if you want to write current game options to config file. Another, more precise option is to implement your own config writing, e.g. using wyz's IniFile module; but i guess that may be complicated now if you're too close to release.

Quote from: Amir on Mon 06/06/2022 21:18:15
But the problem that the language doesn't change everywhere, is still there.

Is this the same problem as above, or a separate one where you get e.g. text in one language in one place and text in another language elsewhere?
#2927
Quote from: PEONPORE on Mon 06/06/2022 06:34:38get this https://i.imgur.com/kbHjDDo.png

The eri0o's example refers to the upcoming AGS 3.6.0. If you are using 3.5.1, the call to Animate should be slightly different.

Code: ags

button_start.Animate(VIEW_BUTTON_START, 0, /* delay */ 2, eOnce);
#2928
@Baguettator, these all may be separate problems. Crash is one problem, wrong displayed characters is another.
For example, in order to display correct characters you also need a correct font.

If you want us to look into this problem we need a test case, where there's a 1) game settings 2) script and 3) a file, that in combination cause the problem.
#2929
QuoteThere is no actual error message, but running the DreamsintheWitchHouseDemo script in Terminal shows the following line after the crash.
Shutting down Allegro due to signal #11
Segmentation fault (core dumped)

That looks like a bad engine error.

Quote from: rongel on Fri 03/06/2022 21:40:46
My version: AGS Editor .NET (Build 3.5.0.23)
v3.5.0, December 2019 (it's a bit older, but I'm hesitant to upgrade at this point)

Ah, that's quite old. Please note that the latest patched version was 3.5.0.32 (which is 9 updates later), available here:
https://www.adventuregamestudio.co.uk/forums/index.php?topic=59109.0
where some bugs could be fixed: you may look up for the "fixed crash" notes in the changes list to see if there's anything similar to your problem.

We also normally do not "support" more than 1 previous stable version, which is 3.5.1 at the moment, as it's difficult to go back in code history and check older versions for the small team we have.


I would actually recommend to update your game at least to the latest 3.5.0 patch. But regardless, something that you might do is to keep your main game in 3.5.0, but build the test version for linux in 3.5.1, or even 3.6.0 that has lots of improvement in contemporary system support. Just make a copy of a project, open it in 3.5.1/3.6.0 and build for Linux there. At least you'll see how it works.
#2930
Quote from: Baguettator on Sat 04/06/2022 10:26:12
Did you displayed the String (with the Display function) that you obtained each time with the ReadRawLineback function ? I remember that all the É characters were not correctly displayed (something like ^A"< you know when the character is not properly read).

I did not display anything, I used exactly the code that you posted earlier: https://www.adventuregamestudio.co.uk/forums/index.php?topic=59842.msg636646559#msg636646559
where you said that substring crashes, to test the crash. I added É characters to the file too, in random places. But it did not crash for me neither in UTF-8 nor ASCII game mode.
#2931
Quote from: eri0o on Fri 03/06/2022 22:15:27
Regards the other information I don't understand why you are asking about AGS versions, can you elaborate what are trying to achieve?

He means, take a game file from 3.5.1 and run it with 3.6.0 web port. We talked on Discord some time ago.

Quote from: NEONVORE on Fri 03/06/2022 21:57:37
I've been told that 3.5.1 I'd need an ags file but in 3.6 I wouldn't

No, you need it anyway, but in 3.6 you can build the game for the web automatically, while if your game is made in 3.5.1 you'll have to combine files by hand. Actually, since you are beginner with AGS, I won't recommend that. What you may do instead is make a copy of your 3.5.1 game folder, and open it in 3.6.0. Then build for web there.

I think you need to first of all clarify which version of AGS you are making your game in.
#2932
Quote from: rongel on Fri 03/06/2022 20:45:59
I also sent him the untested Linux build (which I didn't release yet in Steam), and it runs fine... except that when he loads a manual save, the game crashes

Crashes how, is there an error message?
Could you also clarify which version of AGS are you using?
#2933
Updated to Beta 7
(use download links in the first post)

Script API:
- Implemented `dialog_options_close` callback which is called when custom dialog options are removed from the screen. This allows to perform any required cleanup.
- Added `eEventEnterRoomAfterFadein` event for `on_event` callback, which corresponds to "enter after fade-in" room event.

Engine:
- Fixed rendering scaled up WFN fonts.
- Fixed crash occuring when background speech is removed (found by Pax Animo).
#2934
When he/she sais that "I could run all my other AGS based games fine though, no such problem." do they also use Proton?

If so, then you might need to find out what are the differences of your game. For instance, do you use any script commands that move the mouse cursor?
Do you have any code that tests for a operating system in your script?
#2935
Quote from: AndreasBlack on Tue 31/05/2022 16:51:46
Edit 2: The code you've wrote did nothing it's still Software Rendering.

That code is not for changing renderer type, but "Render at screen resolution" setting. It is not supported by software renderer btw.
It's possible to test if renderer type is software or not using "System.HardwareAcceleration".

QuoteOh, and btw pushing the back button and trying to enter a password aka using the text parser throw's me an error and game crash. I believe the error probably has to do with that i use an ä letter, not sure tho.

Please tell, what error is that? Does it happen on desktop?
#2936
Quote from: Pax Animo on Mon 30/05/2022 17:30:23
Hey there,

Something odd is going on when having two characters SayBackground at the same time.

There seem to be a bug there. There will be a temp build with a fix here in roughly 20-30 minutes:
https://cirrus-ci.com/task/5199731981811712
EDIT: ready


Quote from: Baguettator on Mon 30/05/2022 18:28:57
So I debugged it and I found what happenned : in one of the file (the one who made the game crashing), there were some "É" characters. And this made the game crash during the substring function.

Could you please post a file? I'd really prefer to test real case rather than trying to reproduce this by luck.
EDIT: well, i tried to put random É in the file, but nothing happened.

Quote from: Baguettator on Mon 30/05/2022 18:28:57
The thing is : why ? The file is in UTF-8, and the game too.

The file format does not have a direct relation to the game. File can be read differently, what matters is how it is read and what you do with the data in script. Whether engine works correctly too.
#2937
There's System.SupportsGammaControl property that tells if current renderer and mode supports it. AFAIK Direct3D only supports it in fullscreen.
#2938
I reuploaded the Beta 6 without eInputTime flag, so Wait functions are kept returning 0 for timeout as before.

Please download again (same links), if you've already installed Beta 6 earlier.
#2939
Quote from: eri0o on Sun 29/05/2022 23:26:57
I had the impression any changes in Wait return value was done in 3.6 itself, is the need to return 0 when in time skip something that was present in 3.5.1?

Yes, it was a historical behavior since the beginning to have return value 0 for timeout and non-0 for other, working similar to boolean; this was purposedly left untouched in 3.6.0.
#2940
Updated to Beta 6
(use download links in the first post)

Common features:
- Increased Room Objects limit to 256 (was 40). (This is as much as possible without changing game data format)

Editor:
- When creating new room objects they will now have their script names set to some default value.
- In sprite manager's "export all" dialog added "skip if local" option.
- In sprite manager's context menu added command "Create source files for all sprites with missing / external sources...".
- Fixed going to a "find all" result in dialog script did not highlight the found text, and sometimes did not scroll down to it.

Script API:
- Added InputType enum which defines input devices and lets create their sets as flags.
- Added WaitInput(), a more generic and extendable function that accepts a combination of flags telling which input types to wait for.
- All Wait* functions now return the reason they were skipped: a combination of InputType flag and a respective key or button code.

Engine:
- Upgraded SDL_Sound library, presumably fixes some issues with MIDI sounds.
- Improved file writing times (e.g. when doing a game save) by using buffered file stream. Initial tests showed 50% faster file writing.
- Engine now shares the video texture data for all game objects on screen sharing same sprite. This improves perfomance in case there are multiple objects which use same image.
- Made Animate() function's volume be relative to Character.AnimateVolume for characters.
- Implemented debug key controls for calling a built-in save and restore game dialogs. These controls have to be set in user config as "save_game_key" and "restore_game_key" in "[override]" category. These may be used by testers if the game is missing a save function or one is bugged.
- Added "cache_size" and "stream_threshold" options to config in "[sound]" category, they setup the rules for sound caching and choosing whether to load a clip fully into mem or stream one.
- Fixed dialog script's "goto-previous" command not working if used from the first sub-topic run using "goto-dialog" (a very-very old bug).
- Fixed renderer error occuring if room background frames are of different sizes.
- Fixed game fps sped up if SetGameSpeed() is called repeatedly in game script.
- Fixed Overlay.CreateRoomTextual() creating a screen overlay instead.
- Fixed WFN fonts rendered with misplaced letters if the text is drawn with negative coordinates.
- Fixed TheoraPlayer stopping too early on some videos.
- Fixed sprite cache size was never set from config.
- Fixed game not closing while window is minimized.
- Fixed crash when quitting with error during restoring a save.
- Fixed potential crash on exit on Windows when built in "release" configuration.





In regards to the WaitInput, and other Wait functions. Previously in this version we had a change that let them return the skip result like:
Quote
positive value means a key code, negative value means an inverted mouse code, and 0 means skipped by a timer or script command.
When planning on how a new input device could be supported (e.g. Gamepad, or joystick, etc), I realized that such approach was a mistake, and instead we now have this changed to using a combination of flags:
Code: ags

enum InputType
{
  eInputNone       = 0x00000000,
  eInputKeyboard = 0x00020000,
  eInputMouse     = 0x00040000,
  eInputAny         = 0xFFFF0000
};

The Wait's return value now is a mix of a InputType and key/button code. To retrieve one or another you should be using bitwise operations.
Code: ags

int result = WaitMouseKey(1000);
InputType how = result & eInputAny;
int keycode = result & 0xFFFF;

That's a bit complicated at the first glance, but lets to combine both values, and also easily add more devices to these return values.

The newest WaitInput also accepts a combination of InputType flags, so you can do this:
Code: ags

WaitInput(eInputTime + eInputKeyboard);


When the gamepad, or other devices are supported inside the engine, this InputType enum will be expanded.



SMF spam blocked by CleanTalk