2011/07/07


Flare v0.14 “Main Menus” Released

This release is all about wrapping the core gameplay in main menus, pushing Flare closer to feature-completeness. Now players have four game slots to experiment with different builds. Also, choose your gender and a portrait for your hero or heroine!

Screenshots






Changelog
Title Screen added
Load Game Screen added with four game slots
New Game Screen added with choosable portrait and hero name
Title Music by Brandon Morris
Customizeable portraits with matching sprite heads for heroes
Player portrait displayed during NPC conversations
Female heroine option added
Six player portraits added by Justin Nichol
Save and Exit to Main Menu confirmation added by kitano
GameState base class by kitano
Entity base class by kitano
Variable MP cost for spells added by kitano
Animation class added by kitano
WidgetButton generalized by kitano
Arrow and X to show conversation progress added by kitano
Input text widget added by kitano
Clickable map events added by Thane "pennomi" Brimhall
Enemy group random spawning added by Thane "pennomi" Brimhall
Freeze and Multishot code expanded by Thane "pennomi" Brimhall
Damage Multiplier for powers added by Thane "pennomi" Brimhall
Life Steal and Mana Steal for powers added by Thane "pennomi" Brimhall
Power Cooldowns added by Thane "pennomi" Brimhall and wokste
Item bonus to increase base stats added by Alexander Olkhovskiy
Enabled multiple bonuses on items (up to 8)
Joystick support added by Artur "Zear" Rojek
FileParser now used by all data files added by Bonbadil
Added close buttons to several menus
Attempts to use standard *nix directories if available (XDG or $HOME)
Sound effects volume added to settings.txt
Double Buffering option added to settings.txt
Hardware Surfaces option added to settings.txt
Bug Fix: Teleport Scrolls can no longer be used without a target
Bug Fix: Windows mkdir fixed by Paul-Wortmann
Download (v0.14)

2011/07/06

Map Progression

I’ve been thinking about story progression in terms of maps and tile sets.

There are specific tile sets I want to build. Some just because they sound fun, some because I want to cover various elemental themes (sorta wu xing).

Let’s say I shoot for 12 tile sets in this game. Alternating between “overworld” and “underworld” areas (almost) where the overworld areas feature a town and the underworld areas feature quest targets and bosses.

  • Grasslands (feat. a pioneer village)
  • Dark Forests (wood boss)
  • Badlands/Ruins (feat. a gothic/zombie village)
  • Dungeons (metal boss)
  • Mountain Passages (feat. a mountain village)
  • Caves (earth boss)
  • Tundra (feat. a frozen fort)
  • Ice Palace (water boss)
  • Desert (feat. a trade post)
  • Fire Temple (fire boss)
  • Sky Bridge (feat. a handful of powerful NPC allies)
  • Villain Fortress (end boss)

Assuming I aim to have about an hour of main-quest content in each tile set, that’s a decent 12-hour story with plenty of changes of scenery. There can be side quests and optional maps too. Numbers are minutes:

  • 000-060 Grassland
  • 060-120 Forest
  • 120-180 Ruins
  • 180-240 Dungeon
  • 240-300 Mountain
  • 300-360 Caves
  • 360-420 Tundra
  • 420-480 Ice Palace
  • 480-540 Desert
  • 540-600 Fire Temple
  • 600-660 Sky Bridge
  • 660-720 Villain Fortress

Also, assuming early levels go by faster than later levels. Approximately:

  • Level 1 for 10 mins (000-010)
  • Level 2 for 20 mins (010-030)
  • Level 3 for 30 mins (030-060)
  • Level 4 for 40 mins (060-100)
  • Level 5 for 50 mins (100-150)
  • Level 6 for 60 mins (150-210)
  • Level 7 for 70 mins (210-280)
  • Level 8 for 80 mins (280-360)
  • Level 9 for 90 mins (360-450)
  • Level 10 for 100 mins (450-550)
  • Level 11 for 110 mins (550-660)
  • Level 12 for 120 mins (660-780)

Conveniently this means the player would be level 12 when on the 12th map.
This fits the equipment curve as well (where max level items are about level 14)

Applying time spans to maps, here are the expected creature and treasure levels for each map.

  • Grasslands level 1-3
  • Forests level 4-5
  • Ruins level 5-6
  • Dungeon level 6-7
  • Mountain level 7-8
  • Caves level 8
  • Tundra level 9
  • Ice Palace level 9-10
  • Desert level 10
  • Fire Temple level 10-11
  • Sky Bridge level 11
  • Villain Fortress level 12

The actual XP amount per level will be adjusted once content is in place. Here’s a rough estimate. Currently I’m using XP per kill is the enemy’s level. Estimate about 10 kills per minute (assume some downtime dealing with loot etc, and also assume large quest reward xp).

Level Minutes XP to Next Total XP
1 10 100 100
2 20 400 500
3 30 900 1400
4 40 1600 3000
5 50 2500 5500
6 60 3600 9100
7 70 4900 14000
8 80 6400 20400
9 90 8100 28500
10 100 10000 38500
11 110 12100 50600
12 120 14400 65000
13 130 16900 81900
14 140 19600 101500
15 150 22500 124000
16 160 25600 149600
17

2011/07/05

Windows Ready

Here is a Windows release candidate for v0.14. We have a few more minor data changes but the code is ready for testing.

And here’s the OSX release candidate for v0.14

v0.14 Testing

The current code is the v0.14 candidate. All milestones are now complete.

Over the next couple days we’ll do some testing (especially on various operating systems) to ensure the latest changes work as expected. I’ll put out testing builds for Win and OSX later today.

Meanwhile we’ll do a few data tweaks just before release:

  • Make a final “X” graphic for the conversations menu
  • Convert existing maps to use click hotspots and enemy groups
  • Remove loot crates between the two cave maps
  • Fix collision on the skeletal mage trap in the caves level 1

Windows Woes

I’m working up some fixes for Windows.

  • mkdir() calls are different on Windows, setting up some preprocessor stuff to handle this
  • ItemDatabase.h blows up my MinGW c++ compiler! The item array with the new multiple bonuses is too large. Changing that array to sized at runtime.

2011/06/25

Female Sprites added

Very exciting — one of the huge art components needed for v0.14 is ready. All the female sprites have been added!

There are only a handful of art pieces left for v0.14:

  • Close menu button
  • Close dialog/talker button
  • Finished portraits (coming soon thanks to Justin!)
  • Female combat vocals (hurt, die)

When those are in place I’ll put out a release candidate Windows binary. We’ll still be working on one more code piece (standard linux directories support).

2011/06/21

Note To Self (Art Scale)

Herein I justify the current scale of Flare’s art. I’m writing this because I get tempted to scale the art up often. Here are reasons why it’s not a great idea, and that I should continue on my current path.

Concern: Tiles are 1.5m on a side. That’s weird. Maybe it should be 1m instead.

  • 1.5m is pretty close to 5 feet, the same scale used in U.S. D&D battle grids. Perhaps 1m or 2m scaled tile sets could be used without it being too obvious.
  • 1.5m gives a pretty good combat range on many animations. For tile/turn based games (e.g. tactics or roguelikes) this scale gives a pretty good visual combat (weapons are in range to connect). 1m squares means human combatants are close enough to touch each other and weapons extend too far. 2m squares means short weapons sometimes don’t reach.
  • 1.5m on a side tiles means a 32x32px square directly facing the camera is almost exactly 1 sq. meter. This is perhaps more interesting for judging scale!
  • At 1.5m tiles, an adult human with long weapons can all fit in a 128×128 sprite. If the switch is made to 1m tiles, the sprites could not each fit in 128×128.
  • Additionally at this scale, larger non-boss creatures can nicely fit into 128×128 (see the minotaur). Need a boss creature? Go ahead, use 256×256!

Concern: high-res graphics could require nicer-looking, more detailed 3D models

  • Nothing stopping me from doing more detailed models now. Some details would show up even at the current scale (more than you’d think).
  • The current scale is a good trade-off between ease of creating assets and detailed required.

Concern: other games use larger graphics!

  • This scale is almost identical to Diablo, Baldur’s Gate, and Fallout
  • These games had great-looking art at this scale.

But… but…

  • Flare’s engine should allow a high-res pack, with all the assets rendered at double size.

2011/06/20

Test Build for Windows

Here is a Flare test build for Windows. Many of the new v0.14 features are ready (mostly the main menu systems).

What’s left before the v0.14 release:

  • Fix some placeholder art
  • Implement OS-specific folder usage
  • Add female hero options
  • Add final hero portraits
  • Add main menu music

You’ll notice that the New Character menu is a bit simpler than the sketch I planned below. As I was implementing it, it just seemed keeping it simple was the best course of action.

Version 0.14

Maybe July 1st? Sounds like a good goal. The only feature I’m not confident about is switching to OS specific data and save folders, only because I have zero practical experience there. I’m hoping that feature makes it in, but I wouldn’t be upset if that slips until v0.15 (when many folder changes are happening anyway). I know this is a highly-requested feature, I just want to make sure it’s done properly before shipping it out.

Polish

Flare v0.14 is getting quite a bit of much-needed polish with the new main screens. I hope this will be evident in their current form. Once those menus get the background music and images, Flare will actually start to feel like a game.

The GitHub project has a long list of open issues, mostly looking at what might be added in the short term. Some are additional polish, some are slight game improvements, and some are just fun features. If you’d like to help with any of that, drop me a message. Or, fork away!

Future thoughts: v0.15

It looks like we will probably handle translations as a game-data mod. Mods will be able to override any file in the core data set or add new files. This isn’t a very elegant solution but it should be powerful enough for everything from simple translations to total genre conversions.

Because translations are mods, we’ll be putting the basic mod rules in place for v0.15. This means v0.15 will spend a lot of time in development. But I think that’ll be okay — after all, without a ton of game content in existence there isn’t a pressing need for translations yet.

In your opinion, what should my personal priority be for v0.15? I have several programmers helping with cleaning up the code, so I’m confident about the code side of the game for the foreseeable future. But currently I’m the only artist on board for tile sets and sprites. Maybe I should do high-level code management on v0.15 via github and focus my time on creating art? Or should I get through a few more releases before I switch to an art focus?

2011/06/12

Flare Progress

Flare is coming along nicely. Several of you are helping with much-needed cleanup and refactoring of the code. New neat features are being added (e.g. better multi-missile options).

I’ve finally rendered the male armor layers without heads. I’ve added three male head options (the current head, a bald head, and a hooded head). Currently these “look” options can be set in the save file. The New Game (Create Character) menu will allow these choices, with matching portraits.

2011/06/07

New Character Screen

ASCII sketch time!

                     ####### Choose a Portrait ########
Base Type            #                                #
                     #                                #
(*) Human Male       #                                #
( ) Human Female     #                                #
( ) etc              #                                #
                     #                                #
                   < #                                # >
                     #                                #
    Preview          #                                #
   #########         #                                #
   #       #         #                                #
   #       #         #                                #
   #       #         #                                #
   #########         ##################################

         Name: [______________________________]

                           [Cancel]  [Create Character]

2011/06/06

Officially Moving To GitHub

Flare is taking a distinct change in direction with a move to GitHub. The Google Code page will stay up until v0.14 is released, at least (though it will be increasingly out of date).

I’ve posted a list of code issues to tackle. If you are interested in helping Flare, this is a good place to start. As always, an easy way to contribute is to add some specific feature that you feel is lacking.

I’ve decided to go with a much more community-friendly approach to Flare development than I posted a few weeks ago. Some of those principles still apply, but now I will intentionally be more welcoming to change and new ideas. Already I’ve accepted pull requests for changes I was hesitant about before.

Essentially, this is me admitting that Flare is bigger than just me, and that Flare irrevocably belongs to the community. This isn’t my game, this is our game. With GitHub it is much easier to branch, experiment, and merge. Hopefully this means Flare will improve at an ever-growing pace.