Wintermute Engine Forum
General Category => General Discussion => Topic started by: Mnemonic on January 21, 2007, 02:36:58 PM
-
Hello wintermuties,
after two betas WME 1.7 is finally here. See below for the complete list of new features and bugfixes.
There's no update package available this time, you'll have to install the whole thing once again, because the installer needs to update some shared system DLLs, plus there's a new license agreement you'll need accept. What new license? Well, starting with this version, WME is distributed as donationware. That means, there's no need to purchase a separate commercial license, but anyone can make (any) donation to support further development and to help cover the development expenses.
Also be sure to check our freshly redesigned website at http://dead-code.org/
Ok, without further ado... enjoy ::beer
WME 1.7.3 installer download (14MB) (http://www.dead-code.org/download/download_wme.php)
Update from WME 1.7.x to WME 1.7.3 (5MB) (http://www.dead-code.org/download/download_update.php)
(Note: Saved games are incompatible with previous releases)
WME 1.7.3 (June 2nd, 2007)
- New methods Scene.EnableFog() and Scene.DisableFog() for enabling fog for 3D characters.
- SceneEdit now displays the hot-spot placement for entities to provide a better visual clue.
- Tweaked handling of 3D geometry for scenes with a custom viewport.
- WME Integrator can now generate GeSHi PHP script.
- Removed the troubleshooting options from the startup dialog.
- Several documentation fixes.
- FIX: StickToRegion() method remained active even after changing into another scene.
- FIX: Volume setting for theora playback. Game.PlayTheora() uses global SFX volume, Entity.PlayTheora() inherits volume of its parent entity.
- FIX: Memory leak in String.Split().
- FIX: Changing script order in ProjectMan didn't work correctly.
- FIX: Sprite.AddFrame() was broken.
- FIX: Alpha color for entity containers didn't always work correctly.
WME 1.7.2 (March 11th, 2007)
- WME now comes bundled with a customized SciTE editor for script and definition files editing.
- New WME Integrator tool for for integrating WME with external script editors (supported editors: SciTE, UltraEdit, PSPad).
- New script methods for dynamic creation/deletion of scene layers: Scene.AddLayer(), Scene.InsertLayer(), Scene.DeleteLayer().
- New script methods for dynamic scene nodes creation/deletion: Layer.AddEntity(), Layer.InsertEntity(), Layer.DeleteEntity(), Layer.AddRegion(), Layer.Insert.Region(), Layer.DeleteRegion(). Layer.Width and Layer.Height properties are no longer read-only and can be changed at runtime.
- It's now possible to set ambient light color in SceneEdit (only affects 3D characters). It can also be changed programmatically using the Scene.AmbientLightColor property.
- New Window.Transparent property for making "click-through" windows.
- New project directory in ProjectMan now defaults to "My Documents" instead of "Program Files" to be more Vista-friendly.
- FIX: Some .geometry files weren't properly loaded.
- FIX: Plugin selection window in ProjectMan was broken.
- FIX: Setting package priority now also affects game being run from ProjectMan, not only compiled game.
- FIX: Obect.SetFont(null) now removes the assigned font and no longer attempts to load a file called 'null'.
WME 1.7.1 (February 11th, 2007) - maintenance release
- New scripting methods for iterating free scene nodes (Scene.GetFreeNode(),
Scene.NumFreeNodes).
- New scripting methods for dynamic creation/modification of region entities
(Entity.CreateRegion(), Entity.DeleteRegion(), Entity.Region,
Region.AddPoint(), Region.InsertPoint(), Region.SetPoint(),
Region.GetPoint(), Region.NumPoints).
- Sprite attachments. It is now possible to attach an entity to other
entity or actor. This is primarily intended for creating simple "blob" shadows
for 2D actors. New methods and attributes: Actor.AddAttachment(),
Actor.RemoveAttachment(), Actor.GetAttachment(),
Actor.NumAttachments.
- New Game.SuppressScriptErrors attribute which suppresses the
"Script runtime error" messages on screen.
- It is now possible to block-select multiple lines in String Table Manages
using Shift+Click and deselect using Ctrl+Shift+Click.
- Debugging console now allows you to add "watches", i.e. to only monitor
selected variables.
- Debugging console now allows you to inspect properties of native game
objects.
- 3D actors now use the idle animation for talking if the specified talk
animation doesn't exist.
- FIX: Crash analysis tool was broken in version 1.7.
- FIX: Memory leak when loading .X models.
- FIX: Crash when saving game on secondary monitor with save thumbnails
enabled.
WME 1.7 (January 21st, 2007)
- Stencil shadow support for 3D characters.
- Stencil shadows are
projected onto hidden scene geometry. For that reason, more detailed geometry
is necessary. It is now possible to include meshes only for the shadow casting
purposes in the geometry 3DS file. See the "3D Characters -> Principles and
requirements" chapter in the docs for updated hidden geometry discussion.
- 3D actors can now reference a separate low-poly model for stencil shadow
generation purposes (see the "3D actor definition file" in the docs).
- It's possible to set shadow detail level on scene-per-scene base directly
in SceneEdit (you can only enable stencil shadows in some scenes if you need
to).
- New attributes and methods: Game.MaxShadowType,
Game.IsShadowTypeSupported(), Scene.MaxShadowType,
Actor3D.ShadowType.
- There is a new chapter called "Shadows" in the docs which describes all
the supported shadow types, and their pros and cons.
- Debugging console. The console allows the developer to
inspect running scripts and the values of script variables at runtime. It also
allows setting breakpoints to pause game flow at specified script lines. See the
"Debugging console" chapter in the documentation for more details.
- String Table Manager. A new tool for extracting game texts
and managing the string table for localization purposes. See the "String Table
Manager" chapter in the documentation for more details.
- Note: Both Debugging console and String Table Manager
require Microsoft .NET Framework 2.0 installed. It can be downloaded
here.
- Changed the behavior of scene scrolling for 2.5D scenes. WME now
assumes the camera overviews the entire scene (previous versions assumed camera
only overviewed the top-left part of the scene). The original behavior can be
restored by checking the "Scene scrolling pre-1.7" checkbox in SceneEdit.
- X models now support the "AnimTicksPerSecond" attribute exported by some
3D packages.
- Added right-to-left reading order support for the game settings dialog
(see the "Localization support" chapter in the docs).
- Upgraded to the latest version of Theora decoder, which now uses MMX
instructions to improve performance.
- New scripting methods and attributes:
- Game.TalkSkipButton - specifies which mouse button can be used to skip talk lines (left, right, both, none).
- Game.ClearResponses() - clears any
responses previously added by Game.AddResponse().
- Game.ChangingScene - specifies whether a scene change is currently in progress.
-
Game.LockMouseRect() - locks mouse pointer movement to a specified
rectangle on screen.
- Actor3D.AnimTransitionTime - default time for
smooth animation transitions.
- Actor3D.GoToTolerance - to
prevent actors from moving by just one pixel.
- Emitter.MaxBatches - maximum number of particle batches generated by the particle emitter.
-
Emitter.EmitEvent - allows the particle emitter to trigger a script
event whenever a new batch of particles is generated.
-
Button.TextAlign - omitted in previous versions.
-
Actor3D.MergeAnims() - to load 3D character animations from X file at
runtime.
- Actor3D.UnloadAnim() - to release animations from
memory.
- New global function Debug() which pauses game execution
and invokes the debugging console.
- Spacebar in SceneEdit toggles visibility of a selected node (useful for
fine-tuning overlay placement with keyboard).
- ProjectMan doesn't show hidden files by default (can be re-enabled in
ProjectMan settings).
- In windowed mode, WME now remembers and restores the previous
window position.
- Low-res shadow model can now be used for flat and stencil shadows
to improve performance.
- When placing a 3D actor in SceneEdit, you can select which
animation is played by the actor (Actor -> Choose animation).
- New license. WME is now distributed as
donationware. No
separate commercial license is required.
- New WME logo (thanks to Malasieno), new WME website design (thanks
to odnorf).
- FIX: Bounding box for 3D characters was only growing and it was never
restored to its original size.
- FIX: Animation events for 3D characters are no longer skipped on low
framerates.
- FIX: Camera roll value is now properly read from 3DS files generated by 3D
Studio Max.
- FIX: Memory leak in Actor3D.SetTexture().
- FIX: Game.HideLoadingIcon() was causing script stack corruption.
- FIX: Alpha values lower then 8 are no longer ignored.
- FIX: Alpha blending modes were causing graphical artifacts on 3D
actors.
- FIX: Passing 'float' values from plugins didn't work.
-
Cool!!! Thanks! ::beer ::beer ::beer ::beer ::beer
off to try the new download.
-
Congratulations. A great release as usual. It's beer time ::beer ::beer ::beer
-
Hurrah !!!
Congrats on the new version and the new license... Downloading as we speak (actually just finished)... gonna see if wintermute supports soft vertexes now :-?...
Cheers ::beer
-
Woooooo - turn my back for a few days and everything changes. :o
The new look is great though. 8)
Can I just clarify that license thing though just so there are no misunderstandings - you're saying the engine is now FREE for commercial use, BUT, it would be nice if we made a donation, but the donation is not strictly necessary? In other words, we can actually use the engine commercially without paying anything at all? Do I have that right?
Nice logo too.
-
TheDerman: Yes, that's right.
gonna see if wintermute supports soft vertexes now :-?...
I'm not sure what you mean by soft vertices. If you mean weighted vertices, the .X format does support them, hence does WME.
-
wow thats truly amazing. This engine absolutely rocks !!! And Mr Mnemonic is the God of Rock to me !!
thanks for the great work ...
stucki
-
Hi, Mnemonic -
I was wondering what motivated you to change the licensing to "donationware"? This is extremely generous of you, especially since it seems there are a number of commercial games using WME in development right now.
In any case, thanks a lot.
-
I was wondering what motivated you to change the licensing to "donationware"?
Well, it's something I've been considering for a long time and I had several reasons. Maybe sometime when I'm less lazy busy I'll write a blog post about it :)
-
Hello everyone! I am new here and new in Wintermute. I was waiting for such a software so I'm really glad that I've found it! I've just started reading documentation but I have some idea about a small game. Anyway - I would like to thnx a lot for this software and last update. I'm a big fan of adventure games and I hope that soon we'll see more of them created with wintermute! Great job! ::rock
-
Well, it's something I've been considering for a long time and I had several reasons. Maybe sometime when I'm less lazy busy I'll write a blog post about it :)
Whatever your reasons, thank you. Hopefully this will encourage people to develop commercial quality games with WME (and to compensate you appropriately when they do) :)
-
Wow, new update, new license, new website ... you definitely know how to start a new year ;-)
And with all those new features, especially the debugging console, WME has finally left the "hobby engine state" ... I really hope to see some projects that take advantage of all the new features soon!
-
WME 1.7.1 is now available (see the first post for a download link and a list of changes). It fixes a couple of rather serious bugs so everyone is encouraged to update as soon as possible.
-
Thank you very much. The block-selection in String-Table-Manager will be VERY helpfull. ::rock
Mac
-
Thank you very much for developing and maintaining WME further. You do a great job! ::thumbup ::thumbup ::thumbup
-
WME 1.7.2 is out. See the first post of this thread for more details. ::beer
-
Thank you very much for the new version. ;D The music crossfade problem is not fixed yet?
Mac
-
Oh it is. I forgot to mention it in the version history.
-
Very cool thing. ::rock
-
The SciTE-Integration is very cool, thanks for the update!
-
Thanks!! This is an extremely useful update for me. ::beer ::beer ::beer
-
Cool stuff added. ;D
-
Thanks good update.
I tried this Scene.AmbientLightColor=(40,40,40); (and other variations) and i alway get a syntax error.
The question is how to use AmbientLightColor with script ? ...
-
I got the ambient value with a Game.Msg and it something like this 14145496 for the (40,40,40)
after i tried Scene.AmbientLightColor=(111111111); and i get a light purple ambiance ...
Maybe it will be easier to use a RGB value
-
It sure is easier :) Use the MakeRGBA() global function.
-
It's now possible to set ambient light color in SceneEdit (only affects 3D characters). It can also be changed programmatically using the Scene.AmbientLightColor property.
awesome !
-
What makes this is so much easier to use is your integration of SciTe, big thumbs up from ::thumbup
-
Anyone as a clue how can I make a donation without having to create an account at Paypal?
-
You don't need a paypal account, but you'd need a credit card (PayPal allows you to pay directly via cc without opening an account). Other than that, I don't think there are other options. odnorf suggested pigeons, but somehow I don't think that would work.
-
Tried with a credit card but the dudes ask for a password... well I'll keep trying...
Tried with with pigeons once, but the bastard had an old travel map. I paid for a trip to London but the last time we talked he was heading to New Zealand... Go figure!
-
i think that papay's "pay with a credit card" option actually forces the buyer to open an account.
paypal is evil anyway
-
Well, well, well, Mr. Mnemonic. I see you finally did what I suggested all along, 4 years ago, I think? So, what happened if I may ask? You joined KSC or just realized it won’t bring any real profit whatever you do?
Anyway, let me express my respect for such a wise decision. And, of course, for not abandoning the project. That’s provided the dropping of license fees isn’t the first step to abandoning it.
-
No it's not. Thank you for your "concern".
-
WME 1.7.3 is out. See the first post of this thread for more details. ::beer
It's mostly a maintenance release, fixing several bugs.
-
::thumbup
Thank you, Mnemonic!!! You're doing a GREAT JOB!
From Ukraine With Love ;)
-
Game.ChangingScene - specifies whether a scene change is currently in progress.
I just saw this. Could you please explain how it works ? I always assumed that scripts were suspended during scene changes and that the old scene and its entities' scripts were killed when the new scene is loaded but apparently I was wrong...
Does this mean we can put some code in an entity's script after a call to Game.ChangeScene() and expect to see it run ? Under what conditions ?
Actually we did some tests and put a line like this
while (true) { Game.Msg("still running"); Sleep(1);}
after a ChangeScene and it did print "still running" a few times but I don't understand what makes it stop. timers ? Garbage collection ?
Thanks.
-
ChangeScene() doesn't change the scene immediately, it schedules the change. The change happens in next frame, that is, after all the currently executing scripts finished or executed some blocking command (Sleep, GoTo, Talk...).
So, your code:
Game.ChangeScene("blah");
while (true) { Game.Msg("still running"); Sleep(1);}
should write exactly one message, because the Sleep() will suspend the script, the engine regains control and changes the scene.
EDIT: Actually, it depends on where is the above code executed from. If it's executed from a script of some scene object, there will be only one message, because the script will get destroyed together with the scene. If it was execuded e.g. from actor's script, it will keep writing messages even after the scene change.
-
Well... not exactly! I just figured out that ChangeScene takes two default parameters FadeIn and FadeOut that are true by default, so this piece of code will print out a few lines depending on the computer's speed. If we change it to
Game.ChangeScene("blah", false, false);
then it works as you say, ie. exactly one line is printed before the script yields.
We were doing a bit or processing after the ChangeScene (hiding the actor, etc.) but I guess that it's a bad idea since the time we have to do it depends on the processor speed.
Once again, thanks for the quick answer.
-
Right, I forgot about the fading. I stand corrected.