8000 Releases · jakubg1/OpenSMCE · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Releases: jakubg1/OpenSMCE

Beta 2.2.0

13 Jan 22:57
Compare
Choose a tag to compare

This release adds a ton of small features and fixes some bugs.

Changelog

Additions

Code

  • Added Discord Rich Presence integration!
    • For now, it can't be turned off, but I'll add that functionality soon. If you don't have Discord, you can still use the engine.
  • Added custom powerups and spheres!
    • 9 or more sphere colors are now possible!
    • You can see example definitions in games/Luxor_appendix/config.json.
  • Added a debug button to show sphere train boundaries. Press H key.
  • Added Beazier Interpolation function. Not used anywhere at the moment, but worth noting.

Game

  • Added a placeholder for a level map.
  • Added an instructions screen.

Changes

Code

  • Significantly improved game loading speed.
  • Extra life sound is no longer hardcoded. Instead, it is bound to a widget.
  • Widgets now initialize their position based on starting animation position/alpha if such animation exists.
  • Hiding a Widget now despawns all particles associated with it.

Game

  • Improved a sphere appending animation when it hits the train.

Removals

Code

  • Farewell to Legacy Sprites! They were a pretty bad idea and were being planned to be phased out for a long time before. They were used in sphere, shooter and powerup rendering.

Bugfixes

  • [#18] Fixed various bugs and glitches associated with shooting at the front of a sphere group.
  • [#19] Level lose flag was not saved when exiting the game.
  • Fixed W key causing a crash.
  • Fixed slower sphere magnetization when a Slow or Stop powerup was active.

Notes

  • Emergency save still does not work. Again!

As always, if you're new around here, remember to read the README file if you want to convert the original Luxor game for this engine.

Happy matching!

Beta 2.1.0

13 Jan 20:15
40b5f44
Compare
Choose a tag to compare

!!WARNING!!

On January 13, 2021, tag names for versions up to Beta 2.1.0 were changed.
This release's tag name was changed from an incorrect v2.1.0-beta to a more correct v0.21.0.
The given release date is irrelevant. The real release's date is January 4, 2021.


This release is mainly dedicated to major changes in particle system, however there was also some space for other minor changes and improvements.

Changelog

Additions

  • Added a Debug class.
    • Profilers, Console and a few other things now sit here instead of sitting loosely in main.lua.
  • Added Color Palettes.
    • The class name is Essentials/ColorPalette
    • Color palettes are single image files from which you can get a color.
    • They are housed in ResourceBank.
      • They can be loaded via Loading Lists in config.json: colorPalettes list (optional).
      • Example:
"colorPalettes":[
	"img/powerups/palette1.png",
	"img/particles/palette2.png"
]
  • Added a new console command: crash
    • Dedicated to people who want to kill the engine and force a crash screen, if something critical and possibly harmful happens and to cheat by using this command in order to revert some bad progress in your game.
  • Added node bookmarking.
    • This was introduced in order to improve performance on levels with lots of nodes.
    • How it works is explained in this commit.

Changes

  • Major tweaks to Particle System.
    • Introduced Particle/Packet properly.
    • Game:spawnParticle() will now return a Particle Packet.
      • Other classes can therefore control the Packet: change its position, destroy it, etc.
    • Numerous and breaking changes to the Particle data.
      • The Spawner definitions are no longer keyworded. This makes the root tag a list instead of a dictionary. The spawner name is now a parameter, which is unused.
        Example:
        {
        	"spawner1":{...},
        	"spawner2":{...}
        }
        
        changed to
        [
        	{"name":"spawner1", ...},
        	{"name":"spawner2", ...}
        }
        
      • Spawner: Changed spawnMax: now describes how many Particles the Spawner can have at once, not how many of them it can spawn.
      • Piece: Added posRelative [bool]: if true, the Particle will be attached to the Spawner and move along with it.
      • Spawner: Added pos [Vector2]
      • Piece: Removed pos [Vector2]
      • Piece: Added spawnRadius [Vector2]: this defines an ellipse where a particle can spawn.
      • Piece: Added speedMode [string]: Can be "loose", "radius" or "circle".
        • "loose" is the default mode. The speed affects global particle position.
        • "radius" is a mode where the initial speed is rotated depending where the particle spawns and is scaled by spawnRadius.
        • "circle" is a mode where the particle is attached to an ellipse of size being spawnRadius. speed and acceleration are not Vector2, but just numbers in this mode and they are describing an angle around the center of the ellipse, instead of position.
      • Piece: Added directionDeviationTime [number/nil] and directionDeviationSpeed [number]: After directionDeviationTime seconds, each frame a particle speed vector will rotate with a speed evaluated from directionDeviationSpeed.
      • Piece: Added colorPalette [string] and colorPaletteSpeed [number]: If set, the particle will be colored accordingly to the ColorPalette with a speed colorPaletteSpeed pixels per second.
    • Particles in their new form are used by Collectible, Shooter (idle ball effect for special sphere 8000 s) and ShotSphere (fireball explosion effect).
  • Tweaked some Shooter class code.
  • Added loadImageData().
  • Particles are now rendered below UI. Particles which are spawned by Widgets themselves are not affected.

Bugfixes

  • [#21] Speed shot beam is now aligned properly.

Notes

  • Emergency save still does not work.

As always, if you're new around here, remember to read the README file if you want to convert the original Luxor game for this engine.

Happy matching!

Beta 2.0.1

13 Jan 20:15
Compare
Choose a tag to compare

!!WARNING!!

On January 13, 2021, tag names for versions up to Beta 2.1.0 were changed.
This release's tag name was changed from an incorrect v2.0.1-beta to a more correct v0.20.1.
The given release date is irrelevant. The real release's date is December 23, 2020.


Finally here!

Changelog

For game creators

  • Added a new table to config.json: gameplay.sphereBehaviour.
    • Controls how sphere physics work.
    • Example table, which yields the exact same behaviour as in previous versions:
		"sphereBehaviour":{
			"acceleration":500,
			"decceleration":500,
			"slowDecceleration":200,
			"attractionSpeed":-200,
			"collisionSpeed":-200,
			"slowSpeedMultiplier":0.3,
			"reverseSpeed":-100,
			"foulSpeed":2000
		}

Additions

  • Added a new crash screen in place of a default one

    • Looks like this:
      obraz
    • WARNING!!! Emergency save does NOT work in this version! If you happen to encounter this screen while playing, say goodbye to your today's progress. F in the chat...
  • Level progress can now be seen in the debug screen.

    • You can activate the debug screen by pressing D key.

Bugfixes

  • If you lose your last life and lose the game, the engine will no longer crash.

Notes

  • Moved most of the source *.lua files to src folder. json.lua and class.lua were moved to com, as they are third-party dependencies. This has no effect for the end user, but reduces mess with lots of files sitting in the root directory.

Remember to read the README file if you want to convert the original Luxor game for this engine.
There are plans to make some games available for everyone without a hassle, but I can't tell anything more right now...

Beta 2.0.0

13 Jan 20:15
Compare
Choose a tag to compare

!!WARNING!!

On January 13, 2021, tag names for versions up to Beta 2.1.0 were changed.
This release's tag name was changed from an incorrect v2.0.0-beta to a more correct v0.20.0.
The given release date is irrelevant. The real release's date is November 23, 2020.


After some thinking about, I think that releasing new betas with such a long delay may not be good for future of the engine. Releasing a new version out of sudden with a lot of changes can really hurt, especially if that breaks the compatibility with the previous version. And that's unfortunately what's gonna happen right now, but I'll be sure that it will happen in the future as few times as possible.

That's why I've decided to release the current development progress as a beta 2.0.0 version. From now onwards, new betas will begin to release a few days after each other, with small or not-so-big list of changes so that existing games could be updated without taking too much effort. This is to ensure that no compatibility breaks will occur, and this is a temporary solution until a proper editor (and therefore no need to beautify the syntax, which is one of the main downsides to convert and upgrade game files automatically) is made in the engine. Development versions will continue to release as long as it'll be needed.

No changelog this time, if you really want to know what's added, look at commit history. But a lot of stuff was added :)

Before launching the engine, read README file carefully.

Beta 1.0.1: Hotfix release

13 Jan 20:15
1995be8
Compare
Choose a tag to compare

!!WARNING!!

On January 13, 2021, tag names for versions up to Beta 2.1.0 were changed.
This release's tag name was changed from an incorrect v1.0.1-beta to a more correct v0.10.1.
The given release date is irrelevant. The real release's date is July 23, 2020.


Now asset installing process for the engine should be less confusing.

Changelog:

  • Added fonts and other bitmaps to the converter script
  • A file name will show up when a sound or an image was not loaded correctly, resulting to a crash
  • Updated the readme instructions a bit

Beta 1.0.0: The first release

13 Jan 20:16
312a89a
Compare
Choose a tag to compare

!!WARNING!!

On January 13, 2021, tag names for versions up to Beta 2.1.0 were changed.
This release's tag name was changed from an incorrect v1.0.0-beta to a more correct v0.10.0.
The given release date is irrelevant. The real release's date is July 22, 2020.


This is the first release, lacking a lot of features. However, it's finally available for the public! From now onward, new features will be added and bugs will be fixed.

No changelog there.

0