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

#10941
Quote from: BigMc on Fri 20/12/2013 20:32:48
Quote from: Crimson Wizard on Fri 20/12/2013 16:43:19
3. Copy his new code over and make a one big commit.
Then, continue with pull request as usual.

Even if there's no history it can be useful to commit the changes in multiple steps, which may be doable to some extend if unrelated changes are in different files.
Aye, that's true. In fact one can split changes in one file into separate commits: http://stackoverflow.com/questions/1085162/how-can-i-commit-only-part-of-a-file-in-git (does not work 100% time though).
This all depends on whether the author is going to bother doing this ;).
#10942
Quote from: JanetC on Fri 20/12/2013 14:50:45
It is not related to my AGS repository, which is heavily mucked about with to make mobile games. It is derived from the main AGS port at:

https://github.com/adventuregamestudio/ags

Is there a way that the porting engineer (Edward) could push his changes back there to a separate branch? I assume we want to use his changes if we can, to make the port native Mac compatible from now onward. I'm not an expert on Git. Is this a good idea? Would he need permissions to do this?

Oh, I see.
He should not push his changes directly in our main branch, because we need to check the code difference first to make sure that merging won't break our own version of the code.
Sharing code between repositories on GitHub is done using "pull requests". This is when a person has his own repository and he creates a request to merge one of his branches into one of the other people's branches (not necessarily matching ones).
If Edward used git to maintain changes history all the way, then it should not be a problem for him to create his personal GitHub repository, put the changes there, then make a pull request from his to ours.
I don't know how much has changed, maybe we will need to keep the code in a separate branch at first. We are preparing a 3.3.0 release now, and it will be not good to mess the code up. On other hand, if the changes are mostly in Mac-specific code (not the engine core), then things will be simplier.


In the worst case, if he did not maintain changes history but just has the code as-is, the steps may be:
1. Clone our ags repository to create his personal one.
2. Create a new branch (like "mac-port", etc), forking from the point at which he started his work back then.
3. Copy his new code over and make a one big commit.
Then, continue with pull request as usual.
#10943
Completed Game Announcements / Re: Gemini Rue
Fri 20/12/2013 00:41:51
Quote from: jugwhisky on Wed 18/12/2013 05:52:06
Quote from: Armageddon on Wed 18/12/2013 05:37:03
Does this mean they ported it to a new engine?

I am 99.99999% sure it's still AGS.

Janet just revealed that they finished Mac port for AGS. ;-D
http://www.adventuregamestudio.co.uk/forums/index.php?topic=47264.msg636476089#msg636476089
Pretty exciting, also a big relief that we won't have to rush updating AGS to other library (me being a tad egoistic here) :P.
#10944
Quote from: JanetC on Fri 20/12/2013 00:15:20
Hi, HumbleBundle ported the AGS engine to Mac so that we could have Gemini Rue on the Humble Bundle With Android (it's up now! So exciting!)

This means we now have a working port to Mac, and it's still Open Source, of course!

Where do you guys want it put?

Haha, great to hear! I was suspecting something about this since I've seen your news mail. I am sure alot of people will be happy :D.

Regarding this new port, we would need to see the code to compare changes and learn what needs to be done to make a merge. Is the code still originate from ags repository you have? In this case you could probably submit it as a separate branch to your personal repository on github.
#10945
Quote from: Mods on Fri 06/12/2013 00:14:06
Oh, but it's still 50 save slots :( Turns out that didn't work trying to remove that limit. Maybe Michael can take a look at that for the Steam version.. Changing one integer from "50" to "150" in AGS obviously wasn't the solution :P Wonder what that broke... sorry rem!
Did not see this post before... I think you need to make a custom list control for this to work, manually reading save descriptions and screenshots. I do not think this is too difficult.
See Game.GetSaveSlotDescription and DynamicSprite.CreateFromSaveGame.
This way you will be able to have as much as 999 saves.

Regarding changing in the engine: there might be few places where you need to hack things... but don't do that please, people won't be able to play this game with recent engine ports :).
#10946
I think it may be even simplier than making average interface based on cursor modes.

E: Sorry, removed game link, for it features different kind of design.
#10947
Quote from: Radiant on Wed 18/12/2013 20:42:08
Yes, that's what I meant.
Ok, great, just wanted to know for sure :).
This means JJS's fix did the trick.
#10948
Quote from: Radiant on Wed 18/12/2013 20:27:22
Our testing reports that with the latest build from this thread, setting "[threaded]" in the config file, works fine with no stutter.
Just to clarify, it is "threaded=1" under "[sound]" category, not "[threaded]".
Engine prints one of the following to the log:
Quote
Audio thread started    -- this means threaded audio ENABLED
- OR -
Failed to start audio thread, audio will be processed on the main thread   -- threaded audio DISABLED
- OR -
Audio is processed on the main thread     -- this means threaded audio DISABLED
#10949
Quote from: Radiant on Wed 18/12/2013 01:55:54
Aha. I thought that parameter was in milliseconds, because its counterpart DisplayPostTimeMs is also in milliseconds. I guess it's in frames, then?
Yes, it is an old parameter, it's in game loops:
Quote
game.close_mouth_end_speech_time
At the end of speech text, the speech animation will stop for this number of game loops. Default 10. No affect in voice mode. 

I added "Ms" part to "DisplayPostTimeMs" name to help differentiate the units.
#10950
Hmm, Radiant, you have "game.close_mouth_end_speech_time" (aka Speech.AnimationStopTimeMargin) set to 250 (>6 seconds) as soon as player selects any dialog option while conversing to Hervor (the Adventure Guild caretaker).

Is this intentional? This is either script mistake, or engine bug that sets wrong variable. Please check dialog scripts...
#10951
Quote from: Radiant on Tue 17/12/2013 18:36:32
Hm, this is odd; I have trouble reproducing this. Apparently it only occurs after some time of gameplay, or something. I'll see if I can narrow it down for you.
Heh, actually I just tried again and had this occured.
I jumped to Chapter 2, entered the inn and spoke to woman inkeeper there EDIT: Sorry, I was mistaken, this is Hervor, the "caretaker" of the Adventure Guild. The introductory part was ok, but as soon as I chose dialog option the speech stopped animating completely.

E: Blinking animation still works though...
#10952
Quote from: Radiant on Tue 17/12/2013 12:10:02
I think so; try sliding the speech volume to zero in the control panel (doing so calls SetVoiceMode). If that didn't work, I'll get you a newer version.
Hmm, the speech volume is always zero, because I don't have speech.vox. Yet I do not observe this bug.

PS. I have the "You'd Beta Shape Up" version.
#10953
Quote from: Radiant on Fri 13/12/2013 00:09:49
The SetVoiceMode() function is meant to allow an in-game switch between playing voice samples, displaying subtitles, and both. However, doing SetVoiceMode(eSpeechTextOnly) will prevent Sierra-style portrait animation from playing; this strikes me as incorrect behavior (the text is shown normally, and the portrait is shown in its mouth-closed frame).
I cannot reproduce this... is there some kind of demo I can see?
(I still have older HQ beta, which I can't access right now; does that game have this error?)
#10954
Quote from: Radiant on Mon 16/12/2013 10:46:23
Instead, the function terminates the game when a Windows error popup ("the translation is not compatible with this game"). This is correct behavior if winsetup is used to select an incorrect translation, but not when changing it at runtime with ChangeTranslation().

I did this, but I feel regrets now :-.
The AGS engine does not have a proper error dealing system, there's program abortion called nearly everywhere something unexpected happened (like passing incorrect parameters to the script function). Dealing with every case individually makes situation much worse. There need to be a general solution for this, like something I mentioned long way ago (http://www.adventuregamestudio.co.uk/forums/index.php?topic=46329.msg622693#msg622693, it is the last paragraph of the post).
#10955
Quote from: Radiant on Thu 12/12/2013 20:35:09
This is a bug: when Game.ChangeTranslation() encounters a problem, such as an invalid .tra file, then according to the manual it should return false. This is expected behavior, as it allows the game designer to deal with issues gracefully.

Instead, the function terminates the game when a Windows error popup ("the translation is not compatible with this game"). This is correct behavior if winsetup is used to select an incorrect translation, but not when changing it at runtime with ChangeTranslation().

What should happen if the game was changing from one custom translation to another and failed:
1. Fallback to default translation?
2. Fallback to the last selected translation?
#10956
Quote from: Radiant on Sun 15/12/2013 21:58:56
By the way, if you're rewriting logging, please make sure that every log gets a line number.
No, I am not rewriting logging globally, I am just changing the way logger starts.
#10957
I have an interesting question. Right now I am rewriting how the logging works in AGS: the log will only be written if it is enabled by cmd line argument or in config file, and choosing the sane path for every platform (like home/.ags on Linux). And I am not sure what path to use on Windows.
Writing to the exe folder is not a very good idea, because it won't work if the game is installed on system drive (like in Program Files).

Of course, the logging is not useful for everyone, and many users simply won't bother, but those who do, where they will expect to look for one? Is it "Documents", or some "AppData", or else?
#10958
Quote from: Frostfalk on Sat 14/12/2013 22:41:13
EDIT: I heard that The Cat Lady had a few instances of crashes related to memory.
That was the one issue I mentioned, it was fixed since, just the game used slightly older version of the engine.
http://www.adventuregamestudio.co.uk/forums/index.php?topic=49643.msg636475271#msg636475271
#10959
Quote from: Frostfalk on Sat 14/12/2013 22:24:33
Quote from: Crimson Wizard on Sat 14/12/2013 22:19:13
AGS 3.2.1 has a bug that does not let sideborders work properly on some modern widescreen displays, like 1680x1050 and higher.
3.3.0 has this fixed.

How stable is 3.3.0 right now?

Well, I was not advertising, just noted this. :)
Anyway, 3.3.0 is now at late beta stage; there were no major problems found in Windows version for some time (except one, that was fixed a month ago).
Number of people are doing their games using 3.3.0, including "Heroine Quest", "Mage's Initiation" (I think), and I got to know recently that "The Cat Lady's" steam version uses 3.3.0 too.
(Now I am advertising :D)
#10960
AGS 3.2.1 has a bug that does not let sideborders work properly on some modern widescreen displays, like 1680x1050 and higher.
3.3.0 has this fixed.
SMF spam blocked by CleanTalk