While there weren't any major problems with 2.56 Final, there were a few minor yet irritating issues, which I decided it was worthwhile to fix.
So, here's v2.56a. I'm releasing this as a Release Candidate first just to make sure I haven't managed to break anything. If no new bugs are found, I'll release it as the Final Final this week ;)
ONLY COMMENTS AND BUG REPORTS ABOUT THIS RELEASE IN THIS THREAD. PLEASE DO NOT POST SUGGESTIONS IN THIS THREAD.
Changes since v2.56 Final:
* Changed the way region tints work, to make them more useful.
* Added RawDrawRectangle text script function.
* Added game.anim_background_speed to allow you to modify the speed at which the animated backgrounds rotate.
* DisplaySpeechAt with Sierra-style speech doesn't shrink text box.
* FaceLocation with "turn to face" now works in Enters Screen event.
* Increased max fonts to 15.
* Fixed region tint in 15-bit colour.
* Fixed crash if the player typed [ or ] into the text parser.
* Fixed region tints not being saved in save games.
* Documented custom properties.
Full changelog since v2.55:
* Added GetCharacterProperty, GetCharacterPropertyText, GetHotspotProperty, GetHotspotPropertyText, GetInvProperty, GetInvPropertyText, GetObjectProperty, GetObjectPropertyText, GetRoomProperty, GetRoomPropertyText, ListBoxRemove, SetCharacterBlinkView, SetGUIObjectPosition, SetGUISize, SetRegionTint and StrContains script functions.
* Added Custom Properties to allow you to easily specify options for hotspots, characters, rooms, objects and inventory.
* Added option for characters speed to be adjusted in line with their scaling level.
* Added option to display multiple inventory items multiple times.
* Added option to have the text parser with dialog options, so that the player can either select an option or type something in.
* Added RGB tint option for regions as an alternative to light level.
* Added "Quick Import FLC frames" to import all frames from a FLC file in one go to the current sprite folder.
* Implemented multiple select for dragging and deleting sprites in the sprite manager.
* Added "Update translation file" option, to add new lines from the game to the translation source, whilst leaving currently translated bits intact.
* Added options to translation files, to allow changing font and text direction on a per-translation basis.
* Added preliminary support for right-to-left text writing.
* Added ability to delete sprite folders (USE WITH CARE!!)
* Added "Lock objects in position" checkbox to the GUI editor, to stop you accidentally moving objects when trying to select them.
* Added extra "Blinking" view to draw an extra animation on top of the character's speech animation intermittently while they are talking. Currently Sierra-style speech only.
* Added 'goto-previous' dialog script command to return to previous topic, and 'lose-inv' command to lose the player inventory.
* Added new "Box out" and "Crossfade" screen transitions.
* Added option for characters to turn to face their new direction when using FaceLocation/FaceCharacter.
* Added "Persistent" GUI display option, to not remove it during a cutscene with "GUIs turn off when disabled".
* Added "Auto number speech lines" to automatically give a number to all speech lines in the game.
* Added feature to detect hung scripts and abort the game (for example, scripts like while (1) { } )
* Added ability to export/import the text parser word list.
* Added MIDI controller event support, so that MIDI commands such as sustain will now work.
* Sierra-style speech now shrinks the width of the text window if the text is narrower than the screen width.
* Text parser now accepts ' and - characters, and automatically accepts plurals of all words (ie. an 's' on the end).
* Added ability to change sprite numbers in the Sprite Manager.
* Increased max sprite folders to 500.
* Increased max sprites to 15000.
* Increased max dialog topics to 500.
* Increased max cursors to 20 (though the new ones will only activate the Any Click event at present).
* Script editor is no longer a modal window (but only if it's not opened from the interaction editor).
* Changing a hotspot name now correctly marks the room as modified.
* Sprite manager now remembers which folder you were in before when selecting new item graphics.
* SetPlayerCharacter now changes the mouse cursor if an inventory item of the old character was active.
* Disabled auto-complete in the dialog script editor.
* Fixed Enters Screen Before Fadein not being run if the NewRoom was launched from an inventory interaction.
* Fixed normal mouse cursor flashing up in between messages when Always Display As Speech was being used.
* Fixed Sierra-style speech box overrunning the face if it had wide borders.
* Fixed set-speech-view dialog command not working.
* Fixed buttons in default inventory screen being drawn without transparency.
* Fixed dialog bullet getting set even if you pressed ESC.
* Fixed animated backgrounds sharing the palette, even when you told them not to. You'll need to re-import the main background in any problem rooms for this fix to take effect.
* Fixed thinking view not being exported with character.
* Fixed RunAGSGame not resetting game paused flags.
* Fixed RunAGSGame not working if mode was passed as 1.
* Fixed Rebuild VOX Files to delete the music.vox if there were previously music files, but no longer are any.
* Fixed SetSoundVolume not taking effect with footstep sounds.
* Fixed editor crash if "function" was the last word in a script.
* Fixed "player.inv[index]--;" also decrementing inv[index+1]
* Fixed SetPlayerCharacter crashing if called from game_start.
* Fixed dialog options moving across the screen in non-GUI mode.
* Fixed editor crash typing >200 characters into a label.
* Fixed text window GUI being used for dialog options instead of the specified Dialog Options GUI.
* Fixed GUI button text not being translated if the button also had an image.
* Fixed HideMouseCursor not hiding cursor while message displayed.
* Fixed FollowCharacter crash when stopping char from following.
* Fixed problem with translations where \" had been used in a string.
* Fixed dividing by zero in the script causing a fatal exception.
* You are now always prompted to save changes to a room when loading another one - the Preferences setting only affects the prompt when you choose the "Save Room" option on the menu.
http://www.agsforums.com/ags256arc1.zip
Thank you for the outstanding things you do, Chris.
w00t. Extra transitions! :D
Nice ;) . The new properties thing is a great, as are the new dialog options and the character scaling.
I found a small bug, though. Not sure if I should post it here, since it's not really 2.56-specific, but here it is anyway:
If you check "characters turn to face direction" and use FaceLocation in the "before room fades in" event or the global "Enter Room" evend, the game crashes with a message saying you can't use blocking commands before the screen fades in. I guess having the characters turn instantly in these events would fix that problem.
Woohoo!
W00t... Now if only i had time to make a game... Well school is almost over for me..
MIRROR'D! (http://konterbande.org/ags-2.56-setup.exe)
Hmmm. If you make so many changes in a minor release I can`t imagine the changelog for version 2.6
cool punaman
Why do people keep calling Pumaman "Punaman"?
Anyway. Excellent work, Pumaman. Donald Pleasance will be most displeased.
Don't call pumaman "munopan" it's an evil Greek word.
Excellent work again :)
Pumaman! Your a tiger!! You are really the best! Thank you soo much for your work! I appreciate it really really alot! This version is really awesome. I can't actually believe right now with my mind, that your actually going to make an updated version of AGS one day! This is already soooooooo great ;D ;D *kisses puma right at the mouth, inserts his tongue into his mouth... and starts to licking to lovely face of chris!*
no im not gay... I just love pumaman ;)
-| |--------- :P
^the line_____^ Minimi
Minimi officially crossed the non-scary line with that post....
Thank you Chris, and I'm glad to see that there don't seem to be any Earth-shattering bugs for you to have to deal with this time. Good Luck on future versions, we'll all be here for you.
YEY :)!!
I just found one little thing when converting my game from 2.55, not sure if it's a bug or a difference in the way it now works.
this is with DisplaySpeechAt using "sierra-style w/background"
also using a 1 by 1 transparent sprite for the talking view so it doesn't show one.
This is what I used
DisplaySpeechAt(5,20,300,EGO,"blah, blah");
Wait(80);
DisplaySpeechAt(5,20,300,EGO,"blah blah etc");
Wait(80);
DisplaySpeechAt(5,150,300,EGO,"blah, more etc");
It originally had an x coordinate of 1 in 2.55 and with the width 300 centred it perfectly
I changed it to 5 in 2.56 cause it pushed it right over to the left (which I thought it would in 2.55, but by trial and error it didn't, and I found the perfect centreing)
What seems to happen is it starts at the right x coordinate now but depending on the text wrapping and how many characters fill up the end of the line, it cuts it off to the smallest fit, which in turn makes the width irrelevent, which screws around all the alignments throughout the game.
I hope it makes sense
~Tim
Also minor bug here...
After selecting the funky new crossfade, i tested my game and in the first room the crossfade didnt work correctly, back in the editor some warnings were generated.
Warning Wait() was used in player enters screen - use after fade in.
Well thats all fine and dandy , but there are no Wait commands in there at all, the thing that is making this error is a call to a global function...
FaceRight(CharacterID) <- - And that simply hosts a facelocation command, no wait() commands anywhere.
---
function room_e() {
// script for room: Player enters screen (before fadein)
// Set initial position of PC
character[BOB].x=0;
character[BOB].y=150;
// Set other characters facing directions
FaceRight(FB);
}
---
Quote from: TìmosÃty on Sun 10/08/2003 11:10:04
What seems to happen is it starts at the right x coordinate now but depending on the text wrapping and how many characters fill up the end of the line, it cuts it off to the smallest fit, which in turn makes the width irrelevent, which screws around all the alignments throughout the game.
Yes, this is due to a new feature which shrinks the Sierra-style speech text box width to that of the shortest line, to avoid it looking silly with a huge empty area to the right of the text.
Are you using Centred text alignment? Is that what the problem is?
QuoteWarning Wait() was used in player enters screen - use after fade in.
Well thats all fine and dandy , but there are no Wait commands in there at all, the thing that is makeing this error is a call to a global function...
FaceRight(CharacterID) <- - And that simply host a facelocation command, no wait() commands anywhere.
Did you turn on "Characters turn to face direction"? If so, FaceLocation is a blocking call which will cause this error.
This has already been reported and I appreciate it's rather annoying, so for the next version I'll disable turning in FAceLocation if it's used from within Player Enters Screen.
QuoteThis has already been reported and I appreciate it's rather annoying, so for the next version I'll disable turning in FAceLocation if it's used from within Player Enters Screen.
Damn, that IS rather annoying so Until the next version I'll disable "Characters turn to face direction". What doesnt kill the game makes it stronger...
Quote from: Pumaman on Sun 10/08/2003 12:03:10
Are you using Centred text alignment? Is that what the problem is?
No I'm not using centered text, It's actually a good feature for some areas of my game, but some areas need the old standard, where you specify your own width.
It looks silly with the start of the text box on the left of screen, then varying distances from the right edge of the speech text box to the right edge of screen.
it would be nice to be able to turn the feature on and off in the script, as it can be handy in some circumstances.
eg. SetSierraSpeechShrink(int shrink) 1 for shrink, 0 for no shrink
anyway, there are some pretty neat new features, well done CJ, but I have no reason to use 2.56 for my game at this stage, I think 2.55 has all the features I need, I'd only be updating for the sake of it, rather than the need to, but I like to try to keep up to date with the latest versions, and new features, keep up the incredible work.
I see what you mean - when you use DisplaySpeechAt, it should really use the full width. I'll get that fixed for the next version.
All hail CJ!
It's amazing how commited you are! :)
Thanks for everything, and these esspeccially:
Quote* Added option for characters speed to be adjusted in line with their scaling level.
* Implemented multiple select for dragging and deleting sprites in the sprite manager.
* Added preliminary support for right-to-left text writing.
Great work!
Quote* Added extra "Blinking" view to draw an extra animation on top of the character's speech animation intermittently while they are talking. Currently Sierra-style speech only.
Great! Too bad it only works with Sierra style for now, but no matter :).
edit: Almost forgot to mention my favorite- Properties! :)
One thing that annoys me VERY much, can you provide another ZIP, non-setup version of it for download?
I don't really like the "installing" process, as it messed with registry, start menus and such, especially troublesome if one want to manage several different versions of AGS on the comp. at once.
Of course, I can install it, copy out the files, and then unstall it (which I'm actually doing), but it's still a bit annoying.
eek a possible bug... I can no longer control some game options in my game, the 2.55 compiled version of this still works....
if ((IsObjectOn(1) && (mouse.x >=180)) {
SetGameOption(OPT_WALKONLOOK,0);
} else {
SetGameOption(OPT_WALKONLOOK,1);
}
An object would be turned on and if that was the case he wouldn't walk to hotspots through the object , he would stay where he was and describe them.
Quote from: Necro on Mon 11/08/2003 13:35:32
eek a possible bug... I can no longer control some game options in my game, the 2.55 compiled version of this still works....
Can you clarify what exactly doesn't work? The SetGameOption function hasn't changed in 2.56, what's the problem?
Gilbert: I'm probably going to have to do a 2.56 Refresh with a couple of bug fixes before it's official and gets uploaded to the site, so I'll make that a zip.
One words about the new version: GREAT! Just great! That was a really good work with very nice specials. The room transition styles are such coool.... I love them.
So, now a question by me: The last Version I used was AGS 2.53 beta 1 a before I downloaded this version.
So I know that it is possible to put a game which was mostly created with 2.53 b1a in the new version. But if I finish this old-version-created game with the new 2.56 - can there appear any bad mistakes in the game or is 2.56 good enough to avoid them?
Shortly asked: Can I update an old game in this new version without heistation?
Tobias: Yes, you should be able to, but always keep a backup of your game folder along with the old version of ags, just in case something gets broken.
By the way, I'm also a strong advocate of zip instead of installer. Anyway, I feel bad complaining; it's just a pet peeve
I don't think a setup is needed either, if someone can't unzip a zip file then they aren't going to be able to use AGS..
This version has scaled walk speeds which I will be forever thankful for :) Character movement is almost perfect now (except for seperate x and y speeds)
Looking forward to 2.57 ;D
Quote
Can you clarify what exactly doesn't work? The SetGameOption function hasn't changed in 2.56, what's the problem?
Ok, but I havent changed my code and the SetGame Option no longer functions.
I am as puzled as you are. All I am doing is changing a game option and the 2 if statments are definatly true because I tested them with debug info on screen.
I have triple checked it, I wouldn't of posted here otherwise...
Sorry chris :'(
Quote from: cornjob on Tue 12/08/2003 00:46:02
Tobias: Yes, you should be able to, but always keep a backup of your game folder along with the old version of ags, just in case something gets broken.
That`s the cause I was asking... especially I would like to know it in one point:
Some people have noticed that I set some old games in a newer version (which was this old beta-version before) and that some player of my games had problems with a few errors in these games, which I didn`t get at my computer.
(Of course the error in SMA 2 which I have posted a few days before in this forum was self-cleared, the error didn`t appeared very much, how this player told me...)
Just to ask if such mistakes can appear on some computer-systems for example or should I able to see all of them by self-testing?
Quote from: Necro on Tue 12/08/2003 11:18:31
Ok, but I havent changed my code and the SetGame Option no longer functions.
I am as puzled as you are. All I am doing is changing a game option and the 2 if statments are definatly true because I tested them with debug info on screen.
It's not really my place to say (sorry if I'm offending anyone!), but maybe this will save some time:
Necro: you still haven't said which option you are trying to change! Have you tried changing other options? Why not post your code?
Quote from: Necro on Mon 11/08/2003 13:35:32
eek a possible bug... I can no longer control some game options in my game, the 2.55 compiled version of this still works....
if ((IsObjectOn(1) && (mouse.x >=180)) {
SetGameOption(OPT_WALKONLOOK,0);
} else {
SetGameOption(OPT_WALKONLOOK,1);
}
An object would be turned on and if that was the case he wouldn't walk to hotspots through the object , he would stay where he was and describe them.
Yes I have said which option I wanted to turn on/off, As you can see from the code I supplied just a few posts up!! I have Walk to hotspots enabled, and I have the piece of script above to make it so I dont walk to hotspot to the right of an object if it is switched on. Do I really need to say these things so many times?
As for clarifying , when I say it doesnt work I mean it no longer changes the game option , it no longer switched walk to hotspots off or turn it back on, hence it doesnt work!
My bad, Necro... sorry I didn't read the whole of your post trail. :-\
Here's my suggestion to try and make up for being an ass:
Can I suggest putting a Display("HERE");
inside the first part of the if, so you can see if the SetGameOption bit is even being called. This might also indicate if it is being called at an unexpected time. If you have already tried this: did the message display?
sok SSH, yeah tried that ssh , well I set a globalint in both sides of the if statment (0 in 1 side and 1 in the other) and display debug info in a status line and it changes like it supposed to so it IS executing the if statment ok , just not the SetGameOption command as above... I have PM'd chris with my source hope something can be found out... its dead wierd.
OK no-one has replied to my last bug will they reply to this one?? who knows..
it now seems MoveObject isnt working either...
Quote
MoveObject(0,10,10,2);
while (IsObjectMoving(0)==1) Wait(1);
I made a new game and tried to move the blue cup from one side of the room to the other and its having none of it..
DGMacphee tested it also , didnt work for him either.
Quote from: Necro on Mon 11/08/2003 13:35:32
eek a possible bug... I can no longer control some game options in my game, the 2.55 compiled version of this still works....
if ((IsObjectOn(1) && (mouse.x >=180)) {
SetGameOption(OPT_WALKONLOOK,0);
} else {
SetGameOption(OPT_WALKONLOOK,1);
}
Sorry it's taken me ages to reply, I'm really busy in real life at the moment.
Necro, the reason for your problems is that you have:
MoveCharacter(GetPlayerCharacter(),mouse.x,mouse.y);
in your on_mouse_click.
Thus it doesn't matter whether OPT_WALKONLOOK is enabled or not, he'll move anyway because of your script.
Quote
MoveObject(0,10,10,2);
while (IsObjectMoving(0)==1) Wait(1);
I just tried that and it worked without problems, are you sure the walkable areas are all set up for it to get there?
GRaagh , thanks , sometimes it just needs another pair of eyes to point out the obvious. I honestly thought I was going loopy.
As for the object I think so , lemmie check walkable areas... i wouldnt be surprised if there in lies the answer with my luck recently...
As for real life things? I just noticed that it exists , so I am now leaving for the pub.
laterz
I can't for the life of me figure out what custom properties is, and how it works. I can't find anything in the manual either.
Good point Jimi, I forgot to document them.
That oversight is fixed as part of 2.56a, which is out now (see the first post of this thread).
i unzipped the new version in its own folder, but when i try to make a new game with it, ags can't find the default template. ??? has anyone else experienced this?
Okay, little bug... with the regions light level thing. If you change the number in any region (lets use 1 as an example here though) then hit the up arrow to check out region 2, then go back to 1, it'll be your changed number. THEN if you go back up to 2 and back to 1 it'll have reverted to 100% again... strange, no?
evilspacefart: it's a beta version, the template it not included - just copy it across from 2.55
eVOLVE: oops... well spotted. I'll get it fixed.
doh! I forgot about that. thanks
I think the template should be included, cos a few people have had trouble with it. Or maybe there is a reason for its lack of presence.
i brought this up at mittens :P
Hmmm In my opinion It depends. As beta versions are meant to be for testing purpose only, so it's not for everyone in the public. By downloading and using a beta version you should be absolutely sure that you know what you're doing yourself (that bugs could remain, backup old games and such and such etc., of course I don't mean final releases are bugless).
However, the main problem is that most users, when they make their games, just want to use whatever version is the newest, as they think that newest versions must be betterest, that imposes a danger that they use a buggy version for making their game, and there are rare circumstances that (though it's really rare, but happened before) they made their games in a broken version which the produced cant even be converted correctly to work for a bug fixed version of the engine released later.
So I think that the files in a beta release should not be complete, so not to encourage people to really make a game with such versions.
Of course, leaving out the template files won't stop much people from doing silly things (updating game files without backup), but at least it's done its best to prevent (you won't be able to create a new game with it unless you know what you're doing).
If you're the one who know clearly what you're doing and is willing to test a beta version, you can copy the template from an older stable version already, so you can "fix" this problem yourself (unless of course, that the file format had changed and using an old template won't work).
Aye, the reasons for the template not being included are twofold:
1. it decreases the size of the beta zip file, which saves time and bandwidth.
2. more importantly, it discourages people from using beta versions. However, it's probably not the best way to do this, since generally most people will want to start a new game with a beta to test its features, rather than using their existing game.
Maybe I will include it in future betas... depends on whether I remember really :P
Maybe when you use a beta version and load a game created with previous version, Add a "update game file?" dialog with the warning:
WARNING: You are using a beta version of the Editor to load a game create by a previous version of AGS, Pumaman would not be responsible for any problem possibly caused by this act, either your game files are all broken, your computer explodes, your dog eats your hand, or you just dies.
It's recommended that you backup your game files first.
If you still want to load the game, click "load game anyway", otherwise, click "cancel" to get out of this mess.
[Cancel] [Load Game Anyway]
Good idea Gilbert, I'll look into it.
Anyway, 2.56a is now released, so discussion can continue there.