Wednesday, December 09, 2015

PlayStation Experience 2015

People playing the game at PlayStation Experience
Headed to San Francisco over the weekend to show the game I'm currently working on. This my second exhibtion and I think I've got most of it. It's fun showing the game and interacting with the game players. Personally one of things I really enjoy it's chatting with the other developers. It was nice to have that opportunity.

Sunday, October 18, 2015

How to Make an RPG: October Update

Hello, I'm writing a book (and a assembling a package of source code, assets and other goodies) about how to write your own RPG computer game. The book goes from drawing images to the screen to a fully featured Final Fantasy 6 style JRPG. Sound interesting? There are more details here and you can sign up for the email list to be notified when it's released!

Inside the arena battling monsters
Over two-thousand people have signed up for the release mailing list so that's really encouraging. The first draft of the book is finished and I'm in the editing stages.

Editing includes checking all the text, adding any missing text, making things clearer, cutting text where appropriate. It also includes creating the final screenshots, figures and diagrams. Ensuring all the figure numbers are linked correctly in the text and that kind of thing. It's a slow process but it's going well.

The steps to release are:
  1. Edit the text
  2. Get final art back from the artists and integrate
  3. Front matter, appendices, title cover 
  4. Create the sales page
  5. Small release
  6. Integrate feedback
  7. General release
The book is split into three parts
  1. Exploration
    1. [100%] First Draft
    2. [100%] Editing
    3. [100%] Final Art
  2. Combat
    1. [100%] First Draft
    2. [30%] Editing  
    3. [100%] Final Art
  3. Quests
    1. [100%] First Draft
    2. [0%] Editing
    3. [25%] Final Art




The plan for October

We're already mid-way into October but things are going well. I've found someone to finish the art and that's starting to come back. The Exploration section was completed last month. Progress in the the Combat section is, so far, faster because when I was writing this section I'd settled on most of the book's conventions. Also I published parts of some chapters as blog posts first (Stats, Levels), which allowed me to refine this text earlier on.

Most of the combat section should be finished by the end of month. Final art for the Quests section will also starting coming back this month.

Every week I publish an article about making RPGs to the How to Make an RPG website. Here are some of the more popular releases. (Arguably time writing these articles could be time editing but I find they're complementary activites. When I can't force myself to do more editing, I still feel fine to create an article and vice versa.)

  1. Case Study: How to Release a Successful Indie Game. Guild of Dungeoneering.
  2. The Power of One. Using the Range of 0-1 When Coding.
  3. Sine of the Times. How You Can Spruce Up Your Game Effects With Sine Waves.
  4. State Machines for RPGs. Where. When and Why to Use State Machines in RPGs.
  5. An Invitation to Challenge Yourself

Thanks for reading! For more regular updates follow me on twitter @HowToMakeAnRPG

Monday, August 31, 2015

Wednesday, July 01, 2015

How to Make an RPG : June Update

Hello, I'm writing a book called How to Make an RPG. You can check out the details here. It takes the reader from rendering a sprite to the screen, to a fully featured Final Fantasy 6 style RPG with combat, quests, inventory, levelling stats and everything else you'd want.

The Arena minigame at the end of section 2. Final Art.


The mailing list for the book is now a few sign-ups shy of 2.2k which is good. The first-draft of the book is written and I'm in the editing stages. Editing is proceeding painfully slowly, especially the first pass; as I often have to create diagrams and reword large amounts of text.

Here's the todo:
  1. Finish editing the book
  2. Recieve all final art and replace it
  3. Finish missing text - introduction, lua + engine quick start
  4. Small private release
  5. Revise with feedback
  6. Mass release
  7. Revise and release additional content on the blog (click here to view)
Portraits came back, though I've only shown the hero one so far. They're all in the game and example projects.


This month I've been mainly editing apart from one week when I was knocked out with a cold!

  • Editing finished for sections 2.3 and 2.4
  • Weekly article on the How to Make an RPG website (I wrote these a while back)
  • Recieved the potrait art for the characters back and integrated
  • The game engine that comes with the book was called "DancingSquid" but the .com was registered and it was quite close to "BitSquid" another (since renamed) engine. Therefore I've renamed the engine Dinodeck and grabbed the domain. This will act as a place for documentation and a place to grab the engine binaries and source code.
  • Created and added ~5 diagrams and retook ~5 screenshots for the book
  • Reviewed and edited over 4000 lines of text and code

What's the plan for July?

Well the slog of editing will continue, if I'm very lucky I'll finish up to the end of the combat section and be ready to edit the last section on quests. If not I'll probably only finish the exploration editing. I imagine the last bits of art will start to roll in during the month too, so that will need integrating and paying for.

I'll continue to regularly update the How to Make an RPG blog, if only to build up the site as good store of RPG creation knowledge and draw in people who might be interested in the book.

Thanks for reading! For more regular updates follow me on twitter @HowToMakeAnRPG

Sunday, March 01, 2015

Bitmap Font Rendering

When dealing with small resolutions or tiny fonts, a well implemented bitmap font is nearly always going to be clearer than other types of text rendering.

DancingSquid, my little engine, includes ttf font rendering. The test program shows the font rendering below.

Non-Bitmap Font Rendering
When the font gets quite small there's a little blurring. This occurs because the font is a mesh and has to be scaled down to the desired size. Using this method, it's very hard to know how best to rasterize the font to fill the pixels perfectly. The advantage of this method is fonts can be scaled nicely and are very smooth at larger sizes. Also the DancingSquid implementation has nice things like kerning, unicode support etc, so you can type in Japanese and English and it's all fine.

On top of the DancingSquid engine I've written a small simple bitmap font renderer, to render fonts like those in 16-bit console games. All the fonts are monospace (no kerning) each glyph is a 8x8 pixel box. Because the pixels of the font align perfectly and the font is so tiny each pixel matters; it's much sharper.
Bitmap Font rendering
This bitmap font code is almost a drop in replacement for DancingSquids normal font rendering but it can't scale (though it wouldn't be too hard to add certain scale amounts x2, x4 etc but it'd get blurry / pixelated pretty fast. It would be better just to use a larger font).

If you've read the blog before you probably know I'm writing How to Make an RPG. This bitmap font rendering code won't be making it into the book (but will be freely available). I want to avoid too much low-level engine stuff. I'll update with an article, after the book release,  showing how the bitmap font rendering works and how to add it.


... beause these screenshots have been resized the difference might not be super apparent but clicking on the image should enlarge it!

Saturday, February 28, 2015

How to Make an RPG: Questing Section

Hello, I'm writing a book about making 2d pixel art RPG games like Final Fantasy, Chrono Trigger or Phantasy star. Check it out and sign up to be notified when it's released here: How to Make an RPG the book.

Adding triggers to the town map in the quest section. Art not finalised!


It's about time for another progress update. I've starting recieving some of the art back for the combat section, which is great. I'm going to wait for it all to come back before I update all the examples. Then there's definitely more art I'll need to buy for the later sections (and places I've missed). Here's some of the art:

This shows the final monster of the arena from concept to finish.

I've had a few emails asking about how it's going and updates. For day to day updates follow me on twitter @howtomakeanrpg . I tweet about what I'm currently working on and send out screenshots.

As for overall progress the book is split into 3 main sections
  1.  Exploration
  2.  Combat
  3.  Quests
The good news is, I'm in the final Quest section. The combat section needs a little more content too. Once I'm done with questing I'll have the first draft.

The remaining tasks on questing are (not in order) :
  • Shops
  • 3 small "cutscenes"
  • Save game system / save points
  • Random encounters
  • Simple quest tracking
  • Front facing menus (start, continue) etc
  • 1 dungeon puzzle
  • Add triggers to the overworld map + dungeon
  • Add some triggers to the NPCs in the town
  • Final art (though I can do a first draft w/o this)
  • All the stuff I've forgotten
Once I have the first draft, I need to revise it, then I need to do some front matter, update all the images I've not written and then we're ready to go. I'm half debating if it might be worth doing a kickstarter to help get the word out and also to raise funds to add more art to the book (at the moment there's only the bare-minimum for the examples - pixel art is actually quite expensive! :D).

Once the book is out I'll update the landing page and also probably add a small blog to the main page for supplementary material. I also want to add a contact seciton (as I know it's a pain to find an email for me at the moment! dan@how2makeanrpg.com should work I think:) w/ the 2 replaced to 'to' )

That's where we are, so I'm going to get back to coding up this weapon shop! :D

Tuesday, January 20, 2015

How to Make an RPG Book : Update

I'm writing a book called "How to Make an RPG", it tells you how to make a retro Final Fantasy style game from scratch. It's a big project! To hear when it's out please sign-up on the official How to Make an RPG page here.

New Year's Eve 2013 I moved to Hong Kong.


2014 has been a pretty crazy year personally, last year on New Years Eve I arrived in Hong Kong for a new job. Moving country and taking on a new role reduced the time to spend writing the book. Overall progress has been slow but steady and that will continue into 2015.

Getting equipped for the arena!

The book is split into 3 or 4 sections.

  1. Intro
  2. Exploration
  3. Combat
  4. Questing

In 2014 I wrote the vast majority of the combat section and I also revised the code from the earlier exploration section many many times. As it stands there are maybe 20 chapters and around 80 examples projects! I really want the example projects to be as step by step as I can make them. The current game examples really feel like some type of Final Fantasy V / VI game so I'm really happy with how that's going.

Topics covered in the combat section
  • Stats
  • Levels
  • Party
  • Equipment
  • Combat Flow
  • Combat States
  • Combat Actions
  • Winning, Losing and Loot
  • Advanced Combat (Dodging, criticals, magic, special moves etc)
  • The Arena
 That's a lot of ground covered! It's been a continual suprised how many systems and how much content is present in even a modest RPG. I'm currently finishing up the arena, it's completable now but it needs a little more polish and better graphics.

Once the combat section is finished I'll coontinue on to the final section. The original plan was to write a questing engine that could be used to author any type of RPG at a high-level. I now think that's too ambitious (and would make this long book even longer!). Instead I think the last chapter will be putting together a small game. A town, an overworld map, a dungeon and a quest to retrieve a sword (or similar ancient treasure). I'll come back to the questing engine post-release.

Once the final section is completed, I need to write some of the front matter and intro text. Then I'll have a first draft, I think I'll do a limited beta, then toy with the idea of kickstarter so I can buy a better quality of art. The first release will be shortly after this.

For more day to day updates I'm on twitter here @danschuller but I've now moved most of the book related tweets over to @howtomakeanrpg