Other Resolutions.

Started by Calin Leafshade, Sat 29/12/2012 18:09:41

Previous topic - Next topic

Crimson Wizard

#20
Quote from: selmiak on Fri 15/02/2013 13:25:27
Why is it that the engine needs backwards compatibility to old AGS versions? I never understood this? Isn't it what the editor/compiler needs?
Primarily to run old games on other platforms than Windows, which can't run game in its original state (windows exe).
Also, in certain cases, running old games is better with the new engine, which provides, e.g., video settings better compatible with modern OSes.
Upgrading old project sounds good, but there are thousand of AGS games made by numerous people. You won't ask all of them to remake their games.

Quote from: selmiak on Fri 15/02/2013 13:25:27Or just flag the project with a version number and in the engine you could have a check for this flag,
Quote from: selmiak on Fri 15/02/2013 13:25:27
And with this have all the old deprecated code in a block and the newer stuff in another block without them interfering.
Indeed, and that is exactly what we are doing. Either making a switch between different versions of code, or rewriting code in such a way that will work for old and new versions (when possible).
You probably confuse "backward compatibility" concept with something. It does not mean we can't change the code.

selmiak

nah, was just thinking this is making it unneccesarily complicated and hard to progress with the legacy code always in it.

Gord10

People, I have managed adding 1280*720 resolution to AGS!

I have simply added R1280x720 definition as a 7th element in GameResolution.cs. And then I modified other resolution-related parts of editor and engine, like GetGameResolutionHeight(GameResolutions resolution) function. Now I've got a game that runs perfectly in 1280*720. I will release my next game in this resolution.

Note that I have done nothing yet for backwards compatibility.

I wonder if my compiled test game will work for you, too.
My modified version of AGS
Sample wide screen game

And DO NOT try this new version before taking a back-up of your game first!
Games are art!
My horror game, Self

LimpingFish

I'm out of my depth here, but doesn't the SkyGoblin build of AGS feature custom resolutions? I haven't tried it myself, but I remember someone mentioning it.
Steam: LimpingFish
PSN: LFishRoller
XB: TheActualLimpingFish
Spotify: LimpingFish

Calin Leafshade

Yes but it's hacky and doesnt work right.

We need a proper solution.

dbuske

Quote from: Calin Leafshade on Sun 24/02/2013 22:20:36
Yes but it's hacky and doesnt work right.

We need a proper solution.

Have to disagree.  Skygoblin works fine for me.  I added it on top of 3.2
What if your blessings come through raindrops
What if your healing comes through tears...

Crimson Wizard

#26
Skygoblins version has bugs. I don't know how many and serious they are, and if they may have a strong impact on development, but in any case this means that we cannot use that code as-as, someone must check it out and make fixes (or maybe just rewrite in a better way).

Examples of bugs I found in 15 minutes of working with Skygoblin's Editor:
1. Created a new 320x200 game using 9-verb template. Changed resolution to "Custom Resolution" 320x200. The Editor told me, that resolution did change, and suggested to automatically fix backgrounds. I accepted.
All GUIs become screwed, their sizes and control positions changed in weird ways.
A room editor started to display an image of disproportional size (something around 500x220 I think), although I could not move anything in room beyond 320x200 pixels.
When I compiled and run game, it crashed.

2. Created a new empty game. Set "Custom Resolution" in Global Settings. Typed in Width: 1280, Height: 720. Editor displayed an error message. Typed in Width: 320, Height: 240. Editor displayed an error message. And so on.

3. Created a new empty game. Set "Custom Resolution" in Global Settings. Typed in Width: 1280, Height: 720. Ignored error message.
Created a room 1 with blank background. Compiled and run a game. Game crashed.
I checked room editor more carefully, and found out that room coordinates are limited to 640x400 :-/.
I created a 1280x720 bitmap and imported as room background. Okay, it is a 1280x720 room now. Compiled and run game. It crashed.

I built an EXE for release (Build -> Build EXE) and run game setup. Setup shows that game resolution is 1024x768.

EDIT: BTW, I was very curious, and checked how the setup worked in Barely Floating (1280x720 game). First of all, they made custom setup!, secondly, there's no more any common config file in the game folder, and if I force run "Barely Floating.exe --setup", the AGS setup shows, telling me that the game is 320x200!!

Okay, I may believe that there's some special magic way to make things working, but how a regular average game developer is supposed to work with the program that crashes like that and has so much unexpected and weird behavior?

s_d

CW, that surreal experience of yours reminds me of META  (laugh)

dbuske

Quote from: Crimson Wizard on Tue 05/03/2013 18:34:00
Skygoblins version has bugs. I don't know how many and serious they are, and if they may have a strong impact on development, but in any case this means that we cannot use that code as-as, someone must check it out and make fixes (or maybe just rewrite in a better way).

Examples of bugs I found in 15 minutes of working with Skygoblin's Editor:
1. Created a new 320x200 game using 9-verb template. Changed resolution to "Custom Resolution" 320x200. The Editor told me, that resolution did change, and suggested to automatically fix backgrounds. I accepted.
All GUIs become screwed, their sizes and control positions changed in weird ways.
A room editor started to display an image of disproportional size (something around 500x220 I think), although I could not move anything in room beyond 320x200 pixels.
When I compiled and run game, it crashed.

2. Created a new empty game. Set "Custom Resolution" in Global Settings. Typed in Width: 1280, Height: 720. Editor displayed an error message. Typed in Width: 320, Height: 240. Editor displayed an error message. And so on.

3. Created a new empty game. Set "Custom Resolution" in Global Settings. Typed in Width: 1280, Height: 720. Ignored error message.
Created a room 1 with blank background. Compiled and run a game. Game crashed.
I checked room editor more carefully, and found out that room coordinates are limited to 640x400 :-/.
I created a 1280x720 bitmap and imported as room background. Okay, it is a 1280x720 room now. Compiled and run game. It crashed.

I built an EXE for release (Build -> Build EXE) and run game setup. Setup shows that game resolution is 1024x768.

EDIT: BTW, I was very curious, and checked how the setup worked in Barely Floating (1280x720 game). First of all, they made custom setup!, secondly, there's no more any common config file in the game folder, and if I force run "Barely Floating.exe --setup", the AGS setup shows, telling me that the game is 320x200!!

Okay, I may believe that there's some special magic way to make things working, but how a regular average game developer is supposed to work with the program that crashes like that and has so much unexpected and weird behavior?

Try putting Skygoblinags on top of AGS 3.2.1  I had no problem.
What if your blessings come through raindrops
What if your healing comes through tears...

Crimson Wizard

#29
Quote from: dbuske on Mon 18/03/2013 18:01:33
Try putting Skygoblinags on top of AGS 3.2.1  I had no problem.
That's what I did. And have exactly same results, as I described above.
Have you tried to repeat any of the actions I mentioned? Did they work for you?

Calin Leafshade

it kinda doesn't matter if it worked for him. The implementation is incomplete and needs work. Not least of which the work to bring it in line with the refactored version of the engine.

Literally an irrelevant conversation.

Crimson Wizard

I want to add a small comment to this, since I've already saw two people making this mistake in their custom code (that might be same code, I did not accurately compared them yet).

If someone goes to try implementing custom resolutions, I'd strongly advise not to add it on top of existing resolution logic in AGS, e.g. as a "7th" resolution type (as Skygoblin did, for instance).
The first thing that should be done, IMO, is to remove the old logic with resolutions defined by IDs completely, and incorporate a new one, supplying a conversion between IDs loaded from old game data into actual resolution numbers (for backwards compatibility).
Even though the Editor may still allow to select between standard resolutions (instead of typing them manually) - they should not be enumerated and saved as "resolution id", but as actual resolution numbers (width x height x color).

Just saying...

Luca

I'll take advance of this opened tread to ask a question: me and my illustrator are making a game in 1280X720 using the SkyGoblin custom resolution AGS version and, untill now, we haven't found any bug (we are still protyping :P)...
Now I read about problems that this version could give... what do you suggest me to make a game with that resolution in AGS?
Our game graphic is nice and we would love to keep it :)

I'll try Gord10 version too :)
Indiana Jones : Archeology = Big Lebowski : Communication Sciences

Crimson Wizard

Quote from: ultralooca on Wed 26/06/2013 10:20:09
I'll take advance of this opened tread to ask a question: me and my illustrator are making a game in 1280X720 using the SkyGoblin custom resolution AGS version and, untill now, we haven't found any bug (we are still protyping :P)...
Now I read about problems that this version could give... what do you suggest me to make a game with that resolution in AGS?
I think that Skygoblin's version works well while you stick to its rules. Some people used it for 1280x720 resolution and it worked for them, so I don't see a big problem with that.
What I was saying is that it starts to behave weird as soon as you step outside of certain bounds.
Also, regardless of how well it works for 1280x720, the way it is coded (internally) is not good enough to put this feature to official AGS yet.

Luca

These bounds are only about the graphic resolution?
Indiana Jones : Archeology = Big Lebowski : Communication Sciences

Crimson Wizard

Quote from: ultralooca on Wed 26/06/2013 11:21:05
These bounds are only about the graphic resolution?
Yes, I guess so.
Well, I did not do full testing, all I know is that it breaks easily if you start experimenting with other resolutions than 1280x720.

Luca

Thank you :)
Is there a new official AGS version in development, maybe supporting higher resolutions?
Indiana Jones : Archeology = Big Lebowski : Communication Sciences

Crimson Wizard

Quote from: ultralooca on Wed 26/06/2013 11:38:04
Is there a new official AGS version in development, maybe supporting higher resolutions?
Not yet :(.

Luca

Indiana Jones : Archeology = Big Lebowski : Communication Sciences

Luca

But, apart from the ability to select a custom resolution, what are the differences between the Gord10 version and the SkyGoblin version?
Indiana Jones : Archeology = Big Lebowski : Communication Sciences

SMF spam blocked by CleanTalk