Spellcaster Studios

Make it happen…

Dead, dead, dead…

Today I added a bit more of story to the game, including another boss fight… Wanted something different from the previous ones, so following a friend’s suggestion, I made a fight in which you have to use the environment to destroy the enemy…

Unfortunately, today I’m feeling very lazy, so something that should have taken 2 hours tops, took over 4! And it’s not done, still lot of small bugs, blargh!

Anyway, I still haven’t managed to defeat the boss, so I probably have to tune it a lot…


This has been my life for the last 30 mins… Adjusting the boss, dying fighting him, etc… This planet is also a nightmare… No oxygen desert planet. You can die of thirst, asphyxia, sandstorms, sandworms and enemies… Oh, did I neglect to mention the cultists?! Smile

Link of the Day: I definitely have to make a Physically-Based Renderer on Spellbook one of these days… Here’s a very impressive tutorial/tool demo to paint PBR materials… It has a lot of interesting ideas, which I hope to use one of these days! Check out his channel for more cool stuff (he has a demo with procedural texturing which is just amazing!):

Random spawns

Today I’ve added one more cutscene to the storyline (an important one, too!), and added a new type of enemy: the ninja! I call it ninja, but he’s more of a warrior-cultist kind of thing… but he periodically (or when he takes a lot of damage), he disappears in a puff of smoke, only to re-appear a short while later.

These enemies show up periodically after that, when you’re playing around in the planets… It really adds an extra dimension of danger (you’re hiding from a sandstorm and suddenly, one of these guys spawn next to you!

As the matter of fact, that last bit is a bit too stressful… Smile


The game is becoming a bit challenging even for me with just the gun and no secondary weapon… It’s probably a bit too easy otherwise, really need to work on the weapon balance, but too be honest, I’m not sure on how to start that work so it will be methodical.

Link of the Day: Very interesting article about the the issues surrounding indieness for profit… It’s a  bit blunt, but eye opening: http://www.newstatesman.com/culture/2014/07/why-indie-gaming-s-obsession-moneymaking-hurts-us-all

Everybody’s Kung Fu Fighting!

Today was very productive… Added a new type of enemy, with a special ability, which is rather cool, and it makes gameplay more varied, and finished a couple of cutscenes…


I got to say, working a bit on the game every day for more than a month is really good for morale… not only I have more fun making the game, I’m more productive and new ideas are always popping up in my head… Most of them will be left for sequels/offshoots/other games, but a lot of those I actually used, for example the new ability of the *****…

The only bummer is that I’m reaching that part in the game development that I have to be careful with what I say, don’t want to spoil the story for anybody (not that this is exactly a brilliant, unpredictable story, or that anybody actually reads this… Smile).

Now listening to “Unification” by “Iron Savior”

Link of the Day: Super-cool science thingy! The image where you can’t even see the crinkles is specially impressive! http://www.dailymail.co.uk/sciencetech/article-2690424/Scientists-discover-new-black-British-researchers-devise-material-dark-looks-like-black-hole.html

Battle stations!

Don’t want to talk too much about what I’m doing at this moment (it’s an important moment in the story, and I don’t want to spoil it)…

Let’s just say that Steve and the Skydancer go into battle stations:


Red alarm light always gives some urgency to the scene, especially if I can find a good alarm sound to go with it (I’ve not worked on sound as much as I should).

Now listening to “Kartika” by “The Eternal”

Link of the Day: Been looking forward to this one for some time now, and it launches in a week, yay! Check out the trailer and give them a follow on Twitter (@robotality):

Playthrough, Part IX

As usual on Mondays, not much time/energy to work on the game, so I started on the next cutscene that leads to a new phase in the game…

Without giving too much away, I needed a ship:


And I needed it to be bigger than Skydancer, but the map doesn’t have enough space for it… Will have to use some sort of trick so that the enemy ship looks menacing without being any bigger than the player ship… Probably will have to work with camera angles (or scaling and hope for the best! Smile).

Link of the Day: This is some masterful animation, really impressive stuff, done by just two guys! Can’t wait for the movie (in 2016!):

Playthrough, Part VIII

A bit more work on the storyline… Some new cutscenes, and a big boss fight (grenades and pulse gun, which wasn’t working on the enemies). It’s a quite hard fight, if you only have the gun, which is my case…

I fear the game will need a bit more difficulty… I’m more than halfway through the storyline, and I haven’t bought any upgrades yet! Don’t know if I should make the enemies hit harder, or just give them more health…


Also added a piece of code that links enemies together (so if you attack one, all of them in a vicinity will come running)… Just need to tweak the value a bit…

Link of the Day: Another game that looks pretty cool… It’s a mixture of shooter and point’n’click adventure, all side scrolling… Indies are really doing cool stuff, I feel very jealous!

Playthrough, Part VII

Continuing the path through the game, I had to build one more temple…

First problem I had: because of the procedural generation and random factor, the temple was spawning in a cave planet, which meant that all was dark, so any cutscene would have to account for the possibility of this happen, which makes matters much harder to deal with…

To sort this out, I decided to do the same as the previous temple: have an entrance in the planet, and then build the whole temple separately… This worked very well!

Then, after almost two hours painstakingly building the temple, the editor crashed when I tried saving it! That’s the problem of half-assed tools… :\ Here’s a shot of it before it crashed:


After I stopped yelling, I started all over again and built the new temple (almost the same as the one before)… and ran into the next problem: scenario. Contrary to the previous temple, we’re not in the dark, so if the camera pans, the player will expect to see some scenario around the temple… I have a few ideas on how to solve this (using the background sub-system to solve it), but for now, I just erected walls around the temple (which kind of screw the camera a bit…).


Finished the presentation cutscene as well, so I just need to spawn the bosses… I want this fight to be against two big guys, so I need to add a system to the game in which they can call to each other (so the player won’t fight one at a time)…

Finally, also modified the gun effect to leverage the line code I built the day before yesterday…


I think it looks way better than before…

Now listening to “Clockwork Angels” by “Rush”

Link of the Day: Japan is known by it’s weird TV commercials and shows… Japan in the 70s was apparently even worse: https://www.youtube.com/watch?feature=player_detailpage&v=eak26ohx1Y8

Playthrough, Part VI

Today I carried on with the storyline development, but I hit a snag pretty fast…

When I started to develop the grenades, the idea was to have a boss enemy that had the machine gun and the flashbang grenade, and to alternate between them…

The problem was the way I was making the firing decisions on the AI.

Basically, every enemy had a “cycle time” for melee and ranged weapons. The weapon could then be queried to see if it should/could fire at any point in time. All weapons had such a function… This worked fine for a single ranged and single melee weapon, but when you have two ranged weapon, it doesn’t anymore.

For example, imagine you have a cycle time of 5 seconds for the machine gun and 10 seconds for the grenade, and that the grenade should fire at the end of the 10 second period, and the machine gun during the first half second of the 5 second cycle.

So, the game would decide the machine gun should fire (so it would become the active weapon), and the the cycle would end at the 5-second mark, so it would never reach the end of the 10-second cycle, which made the grenades never fire!

Sorting this one was simple (although a lot of work): I transferred the tracking of the cycle times to each weapon, so both would be kept tracked individually.

But then I hit another problem… Imagine the machine gun has a 5 second cycle, and that it would fire for the first 1.5 second. And you have the grenade with a 6 second cycle, and it would fire when it passed the 5.5 second mark.

In this case, what would happen is that the weapon selected was the machine gun, it would start to fire (so no new weapon decision was made), and then when the firing stopped (at the 6.5s mark), it would see if it could fire the grenade… But the grenade only fires at the 5.5 mark!

After a lot of going back and forth, I decided to change the way the AIs work. They now try to fire all the weapons, so they can fire the grenade while firing the machine gun. The only source of problems is the range of different weapons, but for that I always take the longest range weapon (so the enemy is safer).

After that, I could assemble the new cutscene, but I kind of forgot that I had to keep the player/enemy in the room where the showdown took place, and that took a whole bunch of code so I could “close” the doors on the lair:


Each time I think “now I just have to fix bugs and add content to be able to get to the end of the game”, I find one million small things that have to be fixed and tweaked, but hopefully it’s all to make a better game…

I won’t even comment in the amount of ideas that are on the drawer for a possible sequel/offshoot!

Now listening to “Inhuman Rampage” by “Dragonforce”

Link of the Day: This has to be one of the funniest things I’ve found on the net lately: https://www.youtube.com/watch?feature=player_embedded&v=W8X5ESeeHds


Today I finished the grenades, including the shock grenade… For that, I had to create a new electricity effect! Was a bit hard fine-tuning it (one of the reasons I’m a terrible artist is that I’m very lazy!), but it was well worth it:


It looks really cool in movement (need to start making videos and GIFs with the effects).

This effect is rather simple… A line is drawn between two positions, but that line is “broken” in several segments, to which I apply some noise. Since the noise component changes every frame, it seems to shiver. The hardest part was making a “line-drawing” system. So far, I’ve been using simple line primitives to make most of the effects (weapons, etc), but I was never happy with it, so I just added a “volumetric line”, which has a width and can have a texture applied to it, which leads to this effect you see. Basically I build a quad from the line, using the cross-product between the “camera to segment” vector and the line direction to make something perpendicular to the line direction and the camera, which makes the width more or less constant.

The final part of the effect is the fact that the lines appear very fast (less than 50 ms) but take longer to fade out (300 ms), which simulates the persistence of vision we experience when looking at electrical surges like lightning.

Since I had this effect up and running, I decided to expand it to other uses, like the electrocannon.

It used to look like this:


Which is quite ugly, but with the new volumetric lines, it looks like this:


Way better, I think… I think it still needs some tweaking, but I’ll leave it for now…

Also took the time to integrate the new bat sprites I got from the artist:


Think I’ll have to increase the size of the bats to really make it pop…

Now listening to “The Damnation Game” by “Symphony X”

Link of the Day: This game looks rather cool, and it’s done by a portuguese development team, so spread the word! The trailer is really good, and the game seems very much my cup of tea: https://www.youtube.com/watch?feature=player_embedded&v=1orqZeUbC_4


Worked on the grenades today. Finished the explosive grenade, and got the flashbang and stun grenades working properly, just missing the shock grenade (it’s like a stun grenade but for electronics). And even that’s only missing the special effect, the logic is already there…


The flashbang does a fog effect around the player (or blinds the enemies to the player, if it’s the player that shot it). I still have some game design decisions to do about the duration of the flashbang and if our own flashbangs should affect us or not.


The stun grenade is also pretty neat…

The only problem at the moment is the fact that they are difficult to use… they take two seconds blowing up, which negates some of the usefulness… One possibility is to detonate on impact (easy to implement). The other is tweaking the speeds so that they detonate earlier.

Tomorrow I’ll finish the grenades and start the first big showdown of the game!

Now listening to “Trust Your Soul” by “Sunrise”

Link of the Day: I don’t know if this game will be any good or not, but I really like the spaceship construction system… I wish I could see the different pieces, would be cool to see what can be generated procedurally! https://www.youtube.com/watch?v=EjX-IhFse-o