Saturday, December 7, 2013

CrossBlocks 1.1 BETA!



Hey world,

I've made a post on Reddit asking if people wanted to check out CrossBlocks yesterday, and I got quite a good reaction!
People seemed genuinely interested in my word game, and that's fantastic! :D

To celebrate I'm updating the game to remove all remaining bugs and I plan on polishing it further now I've got some more knowledge since then.

You can look forward to a new and improved version of the game over the next few weeks.

Get it now! Links below:

Cheers!

Thursday, August 1, 2013

CrossBlocks Beta

Those of you who have read my previous post might have guessed: I've been busy making a new word game.
Meet CrossBlocks:

My newest game, and the first one ever with online play (yay!), it's a word game that has the same scoring rules as Scrabble, but it's played differently.



You have 100 seconds to score as much points as possible with the letters you are given.
At the end of the round the real words are found and calculated.
Only real words count towards your score.

You can play for 3 rounds, 5 rounds, 200 points or 300 points. Both English and Dutch are supported languages.
You can also play online against a friend, in this case both players start the round at the same time.


I'm happy with result, it's exactly what I wanted to make, a word game to quickly play together or alone!

You can play the BETA version or download the Android version on my new website:
http://blackdragonsoftware.weebly.com/crossblocks.html

Cheers!

Tuesday, July 9, 2013

Optimization of scrabble-like games

I've been working on a Scrabble-like game for a few days because I really wanted to convert a board game to an enjoyable experience as a videogame.  
It's been quite challenging, but it works almost perfectly now and is pretty fast in finding and scoring.

The slowest part of the whole game though was the checking if words were valid.
I found a huge dictionary file on the web and modified it so it would follow the rules of scrabble as much as possible.  
This file was way too big though: 2MB of words, tens of thousands of lines that had to be read to check every word!

It would take about 3 seconds to load on my PC and about 6-8 seconds on my phone!
That's clearly unacceptable, so I thought of a solution: I wrote a small windows program that can take a huge file, and spit out a small file for every different starting letter in the big file.


So now I have all these small text files, I can search for valid words much faster, I just pick the appropriate file to read depending on the starting letter of the word that needs to be checked.



This change made the checking more than 20 times faster! It loads almost instantly on the PC now and it take takes less than a second on my phone. Definitely worth it.

I can't show the game itself yet, but I'll post about it when it's finished.
Cheers!

Wednesday, June 5, 2013

Battle In Space Development


Hi guys, time for a new update!
I'll be writing about my new game and what I've learned so far, this will probably be a bit different than the previous ones.

The first step, a piece of paper and a pencil


I've been modelling for a while now and decided it's time for a new game!
The game is finished about 80% now, the gameplay is finished, all that's left is the Help screen and the highscores.
I've made it all in a week of coding, finding/making graphics and drawing concepts.
The reason I pumped out a game so fast is because it's really small, and that's a good thing if you want to actually finish a game.

I set a rule for myself: the game has to be as small as possible and the gameplay has to work before adding any polish.
This greatly helped in finding a game concept.
Next thing I did was continue with doing the other stuff I was doing and putting a blank piece of paper and a pencil nearby at all times.

When I thought of something I drew it and decided if it was a good idea or not.
After a while of thinking about games I used to love as a kid I remembered a game called Parodius, a space shooter which had a cool powerup system.
My goal wasn't to just copy the game, I wanted to let it inspire me instead.

Next, I drew a rough game concept with some programming specific notes:

Rough game concept scan

I put the sheet next to me and started coding the gameplay.
The first prototype was finished really fast, just a simple ship model shooting at spheres.
The next iteration included actual enemies and powerups.
The whole process was quite enjoyable as my focus didn't wander because of the sheet of paper next to me holding all the elements of the game.

Up until now I would just open the Unity editor and Visual Studio and just fool around until an idea pops up and the immediately start development. This makes the process as a whole a lot more frustrating though.
We may live in an age of technology, but nothing beats a simple sheet of paper and a pencil for quickly visualizing ideas. 

Playtesting, you can't do it alone


Once I had something playable, I asked people to give it a try on my phone.    
I warned them that it's a test version, so it may be buggy, but I tried not to say too much and just look at what they did and how they reacted.
Most people liked most of the gameplay and the visuals, but there were quite some bugs I didn't notice myself popping up, some quite game-breaking.
Also, some things were either not clear, too easy or too difficult.

Next thing I did was fixing all the bugs and gameplay flaws the players told me about and present it to them again.
The reactions were very positive so I knew I was on the right track.

Graphics & Sound


Now the gameplay was ready I started gathering some free models from blendswap (really great site by the way!) for the ships and doing some small modelling things myself.
I also started up an image editor and started making the GUI elements.

The graphics aren't beautiful by any means but they work well together and the performance is pretty great even on low spec android phones because of the simplicity of the models.
I used lots of particles: for the bullets, the ships, the explosions when enemies are hit, etc.
These were made with Unity itself using the particle system.

For the music, I found out about the awesome http://www.nosoapradio.us/ , which has a dowwnloadable zip with tons of free music for games.
I picked one I liked and inserted it onto the game.
Some music helps a lot for getting the right feeling across.

The sound effects are from a giant sound effects library I got laying around.

All of these put together make for a pretty fun experience, every action you see on screen has a matching sound effect and graphical effect.

Finishing & lessons learned


The most difficult part about making any game is finishing it, so it's important to have an appropriate size of game matching the experience of the creator and setting some boundaries to make it a bit more interesting.
I'm happy with the result up to now, especially for the small amount of time I put into it.
While it may not be the next Minecraft, it's something I made and I'm proud of it.

This small game taught me how to get something playable on the screen quickly and efficiently.
Also, the keyword is iteration, it's impossible to get something perfect from the first try, so build simple core and build onto that, starting with the gameplay!



Release


Battle In Space will be released on Kongregate & the Android Play Store soon for free!
Check out my twitter and this blog for the links when it's here.

Thanks for taking the time to read this!
Cheers!

Monday, May 6, 2013

Fast RPG Final Update

The last update added an improved menu


I've made some progress on Fast RPG, including skills and some major GUI changes.

I've realized I've bitten off more than I can chew with this project though and it's quite difficult to find the "fun" part so I've decided to stop working on it and salvage as much as I can of the code for another RPG project in the future.
I might continue working on it if I get an idea for it but we'll see.

I've learned lots of stuff working on this game and it was a pleasant experience so I still think starting the project was a good choice.

I'm improving my 3D modelling, texturing and animating skills now as you can see in the previous post.
I'll keep you guys updated on my progress and struggles.

Cheers!
BlackDragonBE

Thursday, May 2, 2013

Some Blender Renders

Hi everyone,

I'm working on a big post to explain what I've been doing for the last month but in the meantime I wanted to show you guys some recent renders I've made in Blender.
I've been trying to study Blender a bit more so I can make some better 3D models for future projects.

Here they are:







Cheers!

Monday, April 1, 2013

Fast RPG Update 7

GUI improvement

Changelog:

26/03/13 part2:
- Exit confirmation window
- Quest window selection highlighting
- Inventory selection highlighting
- Equipment highlighting
- Action bar loading/saving
- Action bar highlighting
- Quest completion shows texture
- Redesigned quest description window


27/03/13:
- Avoiding clicking through some GUI elements down to a button below (caused random behaviour) (20%)
- Converted some GUI textures to PSD format for easier editing
- Improved UI


28/03/13:
- Sliding notifications for quest progress & completion
- Clicking sliding notification hides it
- Icon in sliding notification
- Sliding notification when item is added to stash
- Sliding notification when not enough gold in shop
- Made gold icon
- Working on combined menu


29/03/13:
- Bug fixed: get 3 bones quest
- Made gather quests easier to make
- Made kill quests easier to make
- Quests that are complete can cause other quests to become available
- Dynamic creation of quests added
- Improved quest loading after save, supports dynamic quests now
30/03/13:
- Fixed bug: Can't drag from inventory to equipment when equipment slot in use
- Fixed bug: Stash behind equipment part of menu
- Fixed bug: The begin quests keep being added when loading the quests, clear the list in the questmanager if not a new game
- Improved menu
- Added red slime


Explanation:

GUI
The last few days I've been working mainly on the GUI, as it was lacking contrast and it just felt bad overall.
There was no indication if you hovered over a control with the mouse or pressed a button.
So I began searching how other mobile RPGs and RPGs in general did it.

I found out lots of games add a subtle black transparent outline/shadow to their windows and most have both black in white in the border for it to stand out.
So I've tried to add both to my own windows.


The result is decent, although I'll need to make some different sized versions of it once I'm satisfied with the layout of the menu.
The menu is still in progress but I'm planning of combining all seperate windows into one screen filling menu with buttons to switch what to view. The character window in the previous screenshot still needs to be integrated.

Selection highlighting
Improving the GUI is great, but some more interactivity was a must, so I've made sure it's clear now what you're selecting and pressing. Hard to put into a screenshot but here's one anyway:

The selection also works quite nicely inside the inventory.

The appearance of the quests has also been updated, both the quest description and the icon for completing a quest:


Sliding notifications
Another new feature are sliding notifications, the will inform the player without interrupting gameplay.
I'm using them for informing when you don't have enough gold, when you find an item and when a quest is updated and/or completed.
It slides into the screen from the top and displays a message and an optional icon. Multiple of these can also stack under each other. When it's in the way, you can press it and it will move away in an instant, otherwise it will move away after about 2 seconds.



Improved quest system
I've modified the quest system in a few ways, making it easier to make new quests, both pre-made and dynamic creation while in the game.
I have 2 base quest classes for now, one for gather quests and one for kill quests.
Any new quest can derive from these and just needs to set a few parameters to get it going.
The 3 marked quests in the screenshot were made by the game while playing, I plan on using this system for procedural quests, randomly created by the game.

Quests can also activate other quests when completed and turned in, so entire chains of quests are possible.

Gold icon
Finally made an icon to represent the gold in the game!


Red Slime
The red slime was sighted wandering inside the Noob Dungeon, attacking unknowing adventurers!
It rarely shows itself, but it's quite a strong monster.
Because of this slime, the travelling merchants haven't been able to do proper business anymore.
Might be a good idea to get rid of it!

Cheers!
BlackDragonBE


Tuesday, March 26, 2013

Fast RPG Update 6

Saving & Loading!

Changelog:
23/03/13:
- Added mute button
- Improved contrast of UI


24/03/13:
- Added saving/loading game data (inventory, equipment, quests, stash, player stats)
- Start at level 1
- More appropriate equipment at the start
- Made all items & quests serializable for easy loading/saving
- Added save game button in town

- Changed player sprite (still WIP)

25/03/13:
- Removed pole in town
- Improved notification window
- Improved question window
- Added question when saving
- Added clear data button for wiping the saved game
- Changed equipped weapon position and scale
- Multiple items got from chests now don't spawn multiple notification windows, but one with all items listed
- Enemies drop clickable chests


26/03/13:
- Added pages and buttons to stash (150 items can be stored, split into 5 pages)
- Improved quest system
- Updated save/load code
- Fixed huge bug: accessing the player equipment created empty equipment in every empty slot instead of null, resulting in lots of glitches and bugs
- Updated stash position and look
- Adding generic button class for all buttons, with mouse over and press texture changes (5%)

Explanation:

I've left a bigger gap between this update and the previous one because there were some features and changes I really wanted to put in there that were suggested on Reddit by the user NobleKale, a very active user on r/gamedev. Here is my post on Feedback Friday.

His comment inspired me to make some changes, especially the GUI and a mute button.
So I've improved the borders on GUI elements and changed the colors:


And I've added a mute button as you can see under the inventory button:


Another thing I was thinking about ever since the beginning of this project was an effective and easy way to save and load progress. I had to save the preferences anyway so the game would remember if you disabled the sound.
I decided to make a save & load system that collects all the dynamic data and store it with PlayerPrefs  as strings.
This was a bad idea, especially for the inventory and all other item-based collections.  
Luckily I found a very handy script that handles serialization (saving) of custom classes very well and saves it to the playerprefs.
 
This meant I could easily save all items as blobs of data that could be loaded fast at startup.
Everything is saved now if you click the save game button:

Clearing the game data is also possible, although I'm going to move the button somewhere else, probably inside a settings screen. When you press the button you get this lovely warning:

As you may have noticed, notification windows and question windows have been improved, the icon has been placed on top and the information is below it.
Here are some examples:

Notifications can now display multiple icons for showing everything you got from a treasure chest in an instant.

Speaking of treasure chests, all chests are now clickable, even the ones dropped by enemies:
I've also added an animated arrow to make it clear you have to interact with it.
This change is the first towards putting more interactivity in the game besides drinking a potion or two to regain health.

The player sprite has also changed, to a more warrior-like appearance, but there's still a lot of work that needs to be done:
Another thing I've added is stash page browsing, the stash in code was way bigger than could fit on one screen, especially if the target is an Android phone, so I've added navigation to the stash window:


You can now use the full 150 item slots for organizing your stuff!

One last, but very important change I've started on is visual button feedback:
Note the Adventure button color, the cursor is on it
What I mean by this is that buttons light up when you move your mouse/finger over them and press them.

Phew, I hope this update wasn't too big.
Please leave a comment or tweet me if someone has a question/suggestion!
I'll post the save/load code if anyone is interested, it should work with any game.

Cheers!
BlackDragonBE

Friday, March 22, 2013

Fast RPG Update 5


Changelog:

21/03/13:
- Added drag 'n drop from inventory to link bar
- Added background music
- Bug fixed: item shop floor acted as return button
- Updated vendors in town
- Bug fixed: between battles, turn bar can be seen too soon

22/03/13:
- Added drag 'n drop for switching positions in link bar and adding back to inventory

Explanation:
This time I've worked mainly on the action (link) bar on the bottom of the screen.    


It's pretty hard to show the changes in screenshots, but dragging and dropping now also works wonderfully with the action bar. Usable items can be dragged in and out, and can be moved to another slot.  


Some vendors in town have gotten a small visual update, definitely not the final version, but at least they're looking a bit more unique:
Item shop

Inn
I'll be posting to Screenshot Saturday on Reddit this night, I always seem to be late because of the time difference, but this time I'll be prepared! :D

Tuesday, March 19, 2013

Fast RPG Update 4

Changelog:

18/03/13 part 2:
- Treasure chests: supports multiple items in one chest now, but animations shows only first one
- Added map background and hiding/showing GUI on map show/leave
- Added Drop/Destroy button for items in inventory
- New question window, for Yes/No questions
- Added question window before destroying item
- Added icon & name to destroy question

19/03/13:
- Changed map background
- Added WIP town icon on map
- Drag n Drop from equipment to inventory drops equipment item at right place now
- Added some equipment


Explanation:
I wanted the world map to look a little better so I made one to use for now:
The world map
World map ingame
It's still a work in progress, but at least it adds a bit to the mood I think.

The items in your inventory can now be discarded by pressing the new trash can icon:
Discard button
When pressed, it opens up this new question window:

Question window

I've made it so it can be used for all yes/no questions I might need in the future.
In this case I thought it was necessary because I don't want players to destroy their hard-earned items by mistake.

Finally, I've added some new items:
Gold armor

Lava armor

Pointed Helm
Small mana potion
Weak mana potion

Wooden shield 1

Wooden shield 2

Wooden shield 3
Cheers!