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.

Messages - Akemi

Pages: 1 2
Version 2.1 is out! It's not very big, but it solved a big issue I had with it.

Journals / Re: Insurgence of Forgotten Fairies
« on: June 19, 2020, 03:06:08 pm »
  Oh my, it's been quite a while, hasn't it? A lot has been done since April.

  Probably the biggest accomplishment since last post was the programming language I use for bullet patterns now. I programmed an entirely custom language specifically for this game's bullet patterns, and it was definitely worth it. I can program a new pattern in less than half the time it would take for me to do it in the Stencyl block interface. It makes use of the External Data extension to pull .sjbs files (just fancy .txt files that have some pretty formatting when they're opened in Notepad++) into a list. Then I have a very large behaviour that runs through the list and parses everything, giving the correct response. It was a lot simpler to program than I expected; the biggest hurdles I ran into were probably implementing math and attributes, and loops. Of course, it's still rough around the edges, e.g.: sometimes loops won't work properly unless you put a "wait for zero seconds" command inside of the loop, but it works like a charm otherwise.

  Another big thing I set up was the second playable character, seen in the above screenshot. She comes with two new shot types, but her bombs still have yet to be programmed. The main playable character also has her second shot type now, as well as her second bomb, which is probably the most fun I've had programming with the Image API:

  There are also a few things here and there that I've added or fixed: There's a timer on attacks now, so you won't get stuck losing an inordinate amount of lives on a single attack, I figured out a much better way to seamlessly loop music, there's a boss name flair in the corner, there are the white familiars orbiting the boss that signify how many attacks are left, and so on and so forth.

Journals / Re: Insurgence of Forgotten Fairies
« on: April 13, 2020, 01:15:09 pm »

  I'm back to working on this after the game jam. I added a little particle flair when grazing bullets, which in action looks very nice.

  I've also implemented deathbombing (getting hit by a bullet, but quickly bombing, thus losing a bomb instead of a life), which turned out to be surprisingly difficult to code.

  This is also the first forum post with the new fairy animations. They now turn towards whichever direction they're moving.
  I'm also working on remaking the first stage, as I wasn't very happy with the original design: making the attacks fully in time with the music quickly became tedious and not rewarding enough.

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

Journals / Re: Insurgence of Forgotten Fairies
« on: February 11, 2020, 11:54:39 am »
  It's been a bit longer than I'd like it to have been.

  But, I've finally figured out my major lag issue (with a lot of help from rob1221, merrak, Luyren, Justin, and probably some more people: I've been working on this one problem for a while now, so I've forgotten everyone who's helped me. Thanks guys!). That means that I can finally start working on the game again!


  This will probably be the first stage boss's first attack. I also having switched the bullet event listener to updating, so now bullets don't slow down during lag. I'm thinking of causing them to update faster than 100 times a second, though, because of some issues with very fast spirals not coming out properly, but I'm not sure how that would affect the bullets.

Journals / Re: Insurgence of Forgotten Fairies
« on: December 12, 2019, 03:13:52 pm »
  How would I do that? I might have done that already: I divide the bullet's speed by Engine.STEP_SIZE, but I doubt that that's what you're referring to.

  Also, this thread hit 9999 views. Thanks!

Journals / Re: Insurgence of Forgotten Fairies
« on: December 12, 2019, 02:19:41 pm »

The full spectrum.

  I've updated my bullet sheet to have 36 different colours for each type of bullet, resulting in a total of 108 unique bullets so far. This will be important in the future when I code the final boss.

  However, at the moment I believe that I need to look back into optimization again. If you look closely, you'll see that each bullet is not a uniform distance apart. This is because the game is stuttering a bit, dropping below 60 fps for a fraction of a second, before running smoothly again. MakuTile has no lag compensation (which I don't intend to implement, either; I have no idea where I'd even start for that), meaning that every frame drop causes the bullets to stop for a tiny amount of time, messing the entire pattern up just a bit.

  I've got some places that I could start, for optimization. For instance, the health bar at the top is made up of several rectangles, being drawn every frame. I could turn it into an actor that just rescales itself based on the bosses health (like the bar beneath "Potential"). I could also bake some of the text on the HUD straight into the HUD sprite, as the words never change, so they don't need to be drawn every frame. I also heard that you can apparently draw text using the Image API, and it's apparently faster than a drawing event, so I might look into that as well. I could also store the 3D backgrounds frames into an Image API list, so that it is being drawn by the Image API instead of being a very large actor. I have less faith that that will do as much as the other options, though...

Journals / Re: Insurgence of Forgotten Fairies
« on: December 05, 2019, 01:17:52 pm »
  Not really an update per se; I just wanted to post this side by side picture of my first game and this game, since this is my first game's first anniversary.

Some improvements have been made...

Journals / Re: Insurgence of Forgotten Fairies
« on: November 29, 2019, 06:02:46 pm »

The first named attack in the game.

  I've polished up the health bar a bit, so now it has a nice slight gradient towards the bottom. It required me to draw 7 different rectangles at once, but it looks pretty nice now. This is the first time I've posted on the journal with the new boss sprite artstyle. I'm also working on a redo of the player's sprite, but that's not done yet.

  This screenshot also made me realize that I need to alter the bullet sheet a little. If you look closely, you can see other bullets "bleeding" into the bullet image. It should be able to be fixed simply by separating each bullet by a pixel, and then reflecting those changes in the bullet defining code, so it's nothing horrible.

  This is also the first named attack I've made since I remade the bullet system. I've also set it up so that it gets slightly harder when the boss is at low health.

Journals / Re: Insurgence of Forgotten Fairies
« on: November 16, 2019, 07:30:18 pm »

Stage Design!

  I've solved a very strange lag problem with MakuTile that only seemed to affect the first bullet in a series created. I now create an invisible bullet before every series of bullets, so that the invisible bullet lags, and all the rest are fine. I'll try to update the public release of MakuTile relatively soon to add this functionality, as well as a few more quality of life additions (e.g.: a custom block that creates rings of bullets, with customizable amount and angle range.)

  And with that, I think that the bullet system is finally complete. I might add stuff as I go along, to make things easier, or more efficient; but at this point, I can start focusing on other parts of the game. There are still 5 more players to code, and 3 more to animate. There are tons of dialogue portraits to draw. There's still quite a lot of music to be composed. There are 5-6 more backgrounds to be modeled and textured. So on and so forth, but at least I can actually start working on those, without the bullet system weighing me down.

 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.


 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.


Journals / Re: Insurgence of Forgotten Fairies
« on: November 06, 2019, 02:42:56 pm »
  I've dropped the idea of using CannonML, and I'm now coding my own system from scratch again. So far, after a lot of referencing OpenFL API's I've managed to piece together enough code to make this:

A la a certain nuclear crow.

  I can't count how many bullets are on that screen, but it tends to hold a relatively stable 59 fps, which is amazing news. squeeb requested a demo scene with the bullets in it, so I'll probably also release that in the Shared Resources section for anyone who wants to makes a ton of bullets/particles/whatever.

  I've also added a Potential Shift counter and limit, which functions, so you can't spam bombs all the time, as well as a life counter, which is functional as well, but there is no game over event yet, so dying has no punishment as of yet.

  There's now a border around the game area, as JeffreyDriver suggested, and it makes it pop quite significantly.

Journals / Re: Insurgence of Forgotten Fairies
« on: October 21, 2019, 01:01:29 pm »
I've had to recode my bullet system once more, as I keep needing more bullets, and default Stencyl functions simply don't have enough power.

The above is a successful experiment on whether or not the tilemap class runs on Stencyl. There are 400 separately rendered 32x32 tiles, each with their own velocity, each bouncing off the edge of the screen. The low framerate is because I have been testing on Flash for a faster compile time. What I find the most interesting is that all four unique tiles are taken from a single image in the "extras" folder. The code then slices that image up, and renders what we see on screen.

From here, I'm planning on attempting to add support for this, but I've had very little luck so far. I think that I might have it in an extension, I'm just blissfully unaware about how to actually access it...


I wanted to use the threshold transition for my game, but it throws a compilation error on line 10, which is only:

import motion.Actuate;

I'm not sure how to fix this myself, as I tend to stick with Stencyl blocks, but if you could update it, that would be greatly appreciated! I'm running 4.0.

Journals / Re: Insurgence of Forgotten Fairies
« on: September 25, 2019, 01:29:43 pm »
Huh, didn't think of using shaders, but I'll look into them. I've tried to find the specifics of Touhou's engine before, but the guy behind it built it from scratch, so there's almost no documentation on it.

Pages: 1 2