|November 1 2016
||DAZ 3D affiliate
The WarHorse project became possible when I discovered DAZ 3D. It is a great marketplace of 3D assets. You have license to do anything with the 2D renderings, which is perfect for the games I want to make.
Recently they started opening up their affiliate program to more users, so I got signed up.
It's a great tool, and I have enjoyed using it. I check the store most every day, and have built up quite a collection (much of which I plan to find a way to use in WarHorse). Even just the free items they give out over the course of a year can make quite a respectable library.
|August 14 2015
Leading up to the IGMC deadline, much progress was made on the engine, but not enough.
As the deadline loomed, ideas were pursued to make a trimmed down version, but it wasn't enough.
But, these ideas will lead to some improved aspects of the game.
The core game will allow the user freedom to choose the stage they play.
This may utilize an "energy" or "stamina" system like many free-to-play games, such that each stage consumes energy per-attempt.
The user will get to choose to follow the story, pursue side-stories, fight randomized battles (for things like extra currency), and replay prior stages.
This freedom is nice and all, but it does pull the player out of a potentially cinematic environment.
So, progressing from stage to stage should be "automatic" insofar as it provides the user a Next button rather than forcing them to the world map.
So, "Warhorse: Prologue" came to mind.
The concept of this would be a 45 minute continuous story mode.
No world map, no shopping.
In between stages the player will get to choose from limited upgrades (one weapon, one aesthetic).
The hero of the story would originally be from Zone 2, and would find themselves touching on zones 4 and 5.
The end of the story would result in the hero being defeated (I always hate when games do this, but gotta figure a way to make it work).
But, it would be a self-contained, simplified, non-stop story mode version.
The defeated hero will dramatically fall back to the planet (the final boss fight being in space).
The main game will allow you to rescue the hero from zone 3, and trigger sidestories by going back to zone 2 and reuniting the hero with his old comrades.
I don't think the game will give you hints though, so it will be easy for many players to neglect to reunite the hero, unless they put two and two together, read this blog, or someone points it out to them.
In the Prologue, one key weapon will be a self-adjusting weapon that changes based on powerups found in-stage.
These powerups may be currencies in the main game, but for this weapon, they will change its nature.
Like many shooters where you can pick up weapon upgrades in-flight, rather than purchasing between stages.
After rescuing the hero, this weapon dynamic will become available in the main game.
Your stable of horses won't be idle when you're not playing.
They will act as currency generators, harvesting in the background.
Other base facilities will provide currencies, % bonuses, and such.
The calculations will take into account your weapon improvements.
You will assign a horse to harvest from a region, and it will suggest a weapon loadout for them.
Bonuses for regional weapons/aspects will apply too, so if you want to harvest Horror currency, then use a Horror horse and make sure you have some Horror weapons in your cache for them to use.
The game will [try] to select the best available weapons for the mission you assign each horse, but you can override it.
The most common reason to override the weapon selection would be if you want a different horse to use the weapon in a different region.
When weapons you want to use are applied to a harvestor, then it will pull them back from their mission, or maybe just trade directly.
Resource limits are common in free-to-play games, but I would rather not have them in this.
So, it won't compel you to build facilities to store currency.
Also, your harvestors won't require you to check in on them to get them back to work.
If you don't play for a week, then when you return you will have a week's worth of resources harvested, as opposed to a limit (such as an hour's worth).
So, if you play a lot early on, then stop for a while, then restart again later, you'll still have a leg up on people that just started playing.
Ultimately, playing is the best way to earn currencies though, so just leaving the game off isn't a way to really get better faster than other players.
Also, if not playing, you won't have a chance to improve weapons, find new horses, and build new facilities, all of which would improve your harvest yields.
|July 26 2015
[a few days blurred together]
Rendering the terrain finally, using WorldBase XT.
After a few tries, I decided to just put the camera in the center of the scene, and render some wide angle images, then splice together outside of the DAZ3D.
The sky is the simplest, just a big render that will move very little (if at all) in-game.
Rendering the "NearHills" and "OutHills" to separate images meant a bit of manual cutting away.
To "hide" a hill set, it lowers them below ground level, which meant that in my itemized rendering, it still showed up.
But, with enough distance between the hills I was targeting, that a simple selection/delete worked great.
Hiding the "Mist" and "Clouds" was a bit tougher, but ultimately I figured it out, I think.
The trees were done as planes with image bitmaps.
When rendered, the trees had a little artifacting along the top of their planes, which I removed using GIMP.
I got most of the artifacts out with the background set to transparent, but once I imported them into Flash I realized I missed a few, so I went back and used a white background to give me better contrast for seeing the artifacts.
I rendered it so that I could use clusters of trees, rather than necessarily using the whole render surface as a single object.
The ground I rendered as 8 separate images, and will splice/blend them together.
I couldn't figure out how to blend them using Flash (I originally thought I could do an Alpha Mask).
So, I used ImageMagick to do it:
for %%X in (Ground*.png) do convert %%X -channel alpha -fx "min(a,min((i/500),((w-i)/500)))" A_%%X
Thus making the edges of each segment a gradient that could help blend it into the next image.
I made both edges gradients so that I'd have some freedom/flexibility as to how I layer them, or if an error layers them wrong it still works okay.
Playing with Flash some more, trying to make everything load dynamically.
Most of the problems I have, I can find quick solutions for.
One thing that bothers me though, is that I can't seem to have the compilation stop, if compiler errors exist.
So, it quickly detects if errors exist, then it continues exporting the movie anyway, which then goes crazy.
Of course, in ActionScript 2, this "problem" didn't exist, because it really couldn't do compile-time checks, which is the "problem" they fixed with ActionScript 3.
After getting the loading to work as I wanted it to, getting the terrain layers to animate was easy.
I have it treat the sky and mountains as stationary.
The ground and trees move at relativistic speeds.
The ground is guaranteed to re-instantiate at constant intervals, while the trees re-instantiate at random intervals.
I'll likely think of something to tweak as time goes on, but this animation will work well I think.
The top view will be a simple modification, as it has no sky or mountains in view, and possibly not any trees.
The rear view will be the most difficult, but I will just use the techniques I've seen done before, and not stress over how it compares to modern 3D.
Terrain - Forrest - Side