MakuTile 2.1 ~ Danmaku/Bullet Hell System Optimized for Low-End Computers

Akemi

  • Posts: 24
 MakuTile Version 2.1 is out!

 It's a very small update: the "onFrame" function now iterates over the bullet array in a descending order, instead of the ascending order it used to use. This will (hopefully) stop some bullets from not being updated every frame.


 New in Version 2.0:

 ~ Reversed the direction that the bullet array updates.

 Known bugs:

 ~ The HTML5 issue with bullets being created facing the wrong direction is still present.
 ~ Bullet rings with a sweep of less than 360 seem to behave differently on every platform. Windows has the most correct ring, Flash sends every bullet in the ring in the same direction, and HTML5 ends up having a really cool looking collapsing ring.


~~2.0 Release Post:~~


 MakuTile Version 2.0 is here!

 While developing my main bullet hell game, I've added lots of new features to MakuTile, which improve the ease of use of MakuTile, and also allow for more creative and complex bullet patterns. I've also added the ability to change the ID of a bullet, which is very useful.

 Overall, the system has become a bit more complex, which in my opinion, is a good thing.

 Enjoy!


 New in Version 2.0:

 ~ Fixed some spelling errors.
 ~ Added DanmakuRing: easily creates a ring of bullets, with customizable amount of bullets, sweep of bullets, and angle.
 ~ Added DanmakuRingXY: DanmakuRing, but allows the creation of a ring anywhere on-screen.
 ~ Added DanmakuRingRadius: DanmakuRingXY, but has an added "radius" field, which creates the bullets in an actual ring around the specified point.
 ~ Added ChangeMakuTo: Changes a bullet's direction to the specified angle.
 ~ Added ChangeMakuRand: Changes a bullet's direction to a random angle between two numbers, inclusive.
 ~ Added ChangeDanmakuID: Allows the changing of a bullet's ID. This will allow you to cause something to happen on a group of bullets only once.
 ~ Added towardsPlayer: The only non-action block: gets the angle between the actor and the player.
 ~ Added LagBuffer: A little bit useful to combat the odd lag on some bullets. Creates an invisible bullet with no collision.
 ~ Added DestroyBuffer: Destroys all the lag buffer bullets.
 ~ Added ChangeAngleOver: Changes a bullet's angle over a customizable period of time.
 ~ Added bulletToPlayer: Changes a bullet's angle towards the player, independent of the bullet shooting actor's position.
 ~ Added bulletToPoint: Changes a bullet's angle towards a specified point, independent of the bullet shooting actor's position.
 ~ Added immortalizeBullet: Makes a group of bullets not die upon leaving the screen.
 ~ Added mortalizeBullet: Makes a group of bullets die upon leaving the screen.
 ~ Moved the onFrame event into a "Do Every" event. This gets rid of some small amount of bullet lag, and enables bullets to continue moving through game lag.
 ~ Changed the way bullets rotate to face their direction. They now pull the angle from their "anglecache" variable, which enables bullets with 0 speed to still face the correct direction.
 ~ Changed some code in the actor that shoots bullets to show off some more of the new blocks.

 Known bugs:

 ~ There's an odd problem on HTML where bullets don't always face the correct direction.


 
~~Original Release Post:~~


 Presenting "MakuTile"!

  This is a version of the system I'm using in my game, completely isolated for use by anybody. All the code is heavily commented so that almost anybody can pick it up and use it right away.

  At the moment, it's very simple, allowing a bullet to be created with an ID, and for bullets to have their direction changed, based on their ID. In the future, I may update it to add more functionality, but for now I've been mostly focusing on making something pleasant to look at, while still running smoothly.

  The demo has been tested on Windows, but it should work on Mac as well. rob1221 tested HTML5, and it runs only slightly worse than Desktop. Mobile platforms have not been tested yet.

  Enjoy!

« Last Edit: December 29, 2020, 01:00:35 pm by Akemi »



Akemi

  • Posts: 24
 Version 2.0 is now released! The changelog and download are on the first post.

Akemi

  • Posts: 24
Version 2.1 is out! It's not very big, but it solved a big issue I had with it.