fredag 27 februari 2015

An update from the graphics designers (finally).

So here comes a long overdue update from a graphics designer. Over the past few weeks we haven't gotten too much done graphics wise. We've focused too much, in my opinion, on concept art rather than putting actual textures into the game. So far we've only got two fully finished towers in the game, the other one needs some visual tweaking. The programmers have done a great job on creating code for everything and they've even started to pull ahead from us designers. We'll have to step up our game if we're going to get all the textures done in time. Other than that, there's not too much to say, but I am currently working on our cannon tower, and I can give you a sneak peak on the tower's fireing animation.


Best Regards
Alexander Drozd from the Reaper Crew.

fredag 13 februari 2015

Reaper Gameplay



Hello, here is a new demo of the game, it shows most of the features we added the past 4 weeks. We hope you enjoy it // Reaper dev squad

Bugbusters

Progress week 7


Greetings everyone, this week it's my turn to fill you in on what's been going on. You might remember me from a few weeks ago, anyways, i'm one of the programmers, Anton.
This past week we have not gotten that much visual progress done. But fear not, we were fixing non-visual bugs so to say. 

I will go ahead and write what we fixed , and how we did it, code wise.
There was a bug with the gatling gun, it was supposed to rotate in the way that it was shooting so to say. But, knowing programming, something was bound to go wrong and it did. The tower kind of went to the middle of the map and started shooting, instead of staying in it's place. The mathematics behind the rotation is a method, which uses both locations and Atan2. We chose to use Atan2 because it's simpler and quicker than doing it manually with cos and sin.I will go ahead and write the "raw code" of it if anyone is interested.
Atan2(Location1.Y-Location2.Y, Location1.X - Location2.Y)

 It turns out the rotation was right all along, but the origin of the rotation was faulty. Now, the problem was the texture was 43,32 pixels. And we scaled it, down (with code) to 32,32. Our method to get the correct origin took the textures width and height and split it in 2. And since it was scaled with code, the origin became faulty and gave us all a big headeache. So the lesson here is, dont scale textures with code unless necessary...

We also had another quite brutal bug. The game created around 200 items every second. So if you played the game for a long time the lag became unbearable. There was no visible explaination for this, but as it turned out, it was the explosions that weren't getting removed properly. The solution that we went with was to temporarily disable the explosions.

Last week our enemies had a speed of the datatype "int". But since we wanted the game to be even more adjustable, we decided to change it to a Vector2. It was a simple matter of converting values to float. We have a method that sets the speed, and that is where we converted values to float and it worked. Now that it is a Vector2 it allows for different speeds in x and y, if we want. This is a matter of balancing, and we're not quite there yet.

There is also a new type of enemy, it's a slow moving and very high health enemy. Code wise it's nothing special, it's the exact same as all other enemies, except with different speed and health.
Even though the undead enemies were exactly the same as the pirates, they crashed the game. After about an hour of debugging it turns out it was a syncing error, the undead inherited from the wrong class cause the sync in didnt work as intended.

Another thing that we fixed this week is the mines. What we did was we made them upgradeable via the shop. Not only the mine though, the wizards are now upgradable aswell.

The menu, now has another functioning button, the credits button. It's a slideshow of our names.

About a month ago we uploaded a demo of our game for you guys to watch. Now it's 4 weeks later, and we have made so much progress that we decided to upload another demo.

Anyways, that was all we had for this week. Thanks for tuning in, and i hope to see you back soon.

//Anton




fredag 6 februari 2015

Weekly Report

Hello again, this week I will be bringing the latest news from Reaper's programming team.

While we don't exactly have any brand new features that will dramatically change the gameplay, We've done plenty of tweaks in general and I will mention most of them and explain why we needed to do those tweaks and bug fixes.

So the biggest issue of the week was about the game duplicated itself. The intention of our trained monkeys (programmers) was to create an explosion, but magically we drew everything on screen twice. Needless to say we noticed the bug quickly due the game started to lag and we rapidly noticed our mistake and it's no longer an issue.

The player no longer gain four gold mines automatically and you now need to build them properly  like any other tower. We automatically spawned it on the map to test the functionality much quicker but it seems to work properly now so we no longer feel that need. However you can only build it on the special gold mine plot.

We've also expanded our number of enemies within our game. Anton has worked very hard on it this week. Both Pirate and Undead enemies are now able to spawn and work correctly. The pirates are also animated and rotate properly when they turn unlike all the previous enemies we've shown.

The progress on towers are also moving forward. This week we've completed two additional towers. 'Wizard Tower' and 'Arrow tower' + its upgrade "Gattling Gun". The Wizard Tower is currently just shooting a normal projectile every once in a while, however once we've added the upgrades for the tower it will gain a few special abilities that will make it extremely unique. Arrow tower is an unique tower because of the fact that it doesn't directly target units. Instead, it targets locations on the ground and everything that comes close to the projectile takes damage. Currently it shoots in four directions, north, south, west, east. This tower was quite tricky to code because of the fact that our projectile system requires you to specify a target unit. So we had two choices, either we add a bonus method to handle this tower specifically, which would also lead to changing

Lastly we got a upcoming wiki page which will be available from the ingame menu and contain all nececary information about all enemies and towers. Possibly all the gameplay mechanics in general (in the future). Note that this is work in progress so we'll likely informing you of the progress on that next week.

//Lukas N