Well of Souls:
Home Page
Download It!
DonateWoS
Tactics:
How Do I Host?
How Do I Join?
How Do I Launch?
How Do I Play?
How Do I Fight?
How Do I Win?
Picking My Army
Player Stats?
Rock/Paper?
Level Ups?
Guild Wars?
World Developers
Community:
Guild Hall
About Guilds
WoS Ladders
War Guilds
Bulletin Board
Hall of Heroes
Josh
Developers:
Custom Skins
Other Worlds
Author's_Guidelines
Art_Submission
Cheat Codes
Beta Testers Page
Development_Notes
Synthetic Reality
|
What is Wos Tactics? WoS
Tactics is an optional mini-game you can play in
Well of Souls Worlds. It does not replace any
aspects of the world, it is just a mini-game, but
it is multiplayer and supports bots to fill in
missing roles.
It
is a turns-based strategy game played on a
move-restricted grid. You will need your WoS
window expanded to at least 1024x768 to play the
game satisfyingly (and larger is probably
better).
The
assets (maps, tile images, sound effects, piece
definitions..) are all extensible by the world
developer, and files can be easily hosted on your
web site from which they can be downloaded by the
players.
WoS
Tactics is available in Well of Souls version A96
and later.
How Do I Host a
Game of WoS Tactics?
Start
up Well of Souls and incarnate one of
your characters into the world. While you are on
a map (not in a scene), open the "Book of
Tactics"
from the BOOKS menu. This will open a dialog
something like this.
If
you have never downloaded any WoS Tactics Assets
for this world, you will be prompted to push the DOWNLOAD
TACTICS button first.
Assuming
you now have the assets, you will see a button
"Host Tactics Battle" in the lower
right. If you press that, you will
drop into a scene, just as if you had camped. Only
the display will be completely different froma
normal scene, and you will not see your WoS
character anywhere on the screen.
To get out of the
tactics scene, use the normal WoS Leave
Camp button.
While
in a WoS Tactics Scene, as the host, you can use
this dialog to pick one of the available maps,
and configure your starting army formation. Other
players may drop into the scene, just like any
other camp scene (they see a special icon on the
world map to let them know a WoS Tactics scene
exists).
You
can close this dialog at any time and re-open it
during the battle as needed.
Getting
Tactics Assets
The
first time you open the Book of Tactics in a WoS
world, you will be told you need the 'assets'
(that means pictures and sound effects,
basically). Press the "Download
Tactics" button to fetch a complete set of
files from the web site specified by the world
developer.
You
may also do this from time to time to pick up new
maps, pieces, and tiles. You should probably
do this once before dropping into someone else's
tactics battle. Do it now, I'll wait....
Getting
Help
The
left-most button will launch the in-game browser
which will then display this very web page. Sort
of redundant to your needs if you are already
reading this.
The
Mini Map
A
coarse representation of the currently selected
map is shown on the dialog. You can see the
starting army positions (red, green, blue, and
yellow) as well as the current locations of all
army pieces. Click in the mini-map to center your
main screen view on that location.
|
How Do I Join a
Game of WoS Tactics?When you see a WoS
Tactics camp icon appear on a World Map, just click
on some player in that scene to be dropped into
it. You will then be a spectator.
If the WoS
Tactics battle has not yet started, then your
Book of Tactics will offer you a button
to join the game. Up to four people may play in
the same battle. The battle doesn't begin until
the scene host presses the launch button.
When you join
the battle, you are assigned one of the remaining
player positions *at random* (for fairness). There is
no way to pick a particular position. Each player position is
identified both by a number and a color (red,
green, yellow, blue)
If you enter the
scene after battle has started, then you will be
just a spectator for that battle.
|
How Do I
Start/Stop a Game of WoS Tactics?When enough players have
joined the battle, the Scene Host will have a
"Launch Tactics Battle" button and can
launch the game.
One player will
be picked at random to get the first turn (a
caret appears next to the player name whose turn
it is).
Currently there
is no way to remove a player (but check in later
releases to see what menu you get when you
right-click on a player name in the Tactics Hud).
There is also no
way to stop a battle, short of the host leaving
the scene (which destroys the scene for all
players).
Options
(Map, and #pieces moved per turn)
As the scene
host, before launching the battle you may use the
combo boxes to pick a MAP and a "number of
pieces which can be moved per turn"
As you will see,
a turn consists of a player moving 'some number'
of their army pieces. The choices for 'some
number' are:
- 1 - move
any one of your remaining army pieces
- 2 - move
any two pieces
- 3 - move
any three pieces
- 4 - move
any four pieces
- move 'all
rested' pieces
Rest
Each piece
starts the battle 'fully rested' and uses one
unit of 'rest' to move, and another unit of rest
to 'attack', thus at the end of your turn the
pieces you used in that turn will not be fully
rested. In your NEXT turn, only those pieces with
a minimum amount of rest (currently 2 units) will
be able to take part.
This is only
true when using the 'all rested' feature as
described above.
Adding
Bots
If
no humans want to play with you, or you just want
a bigger battle, you (the host) may press the Add
Bot button to add a computer-controlled army to
the battle.
Since
you, the host, are always in the battle, you can
add up to three bots.
Bot
armies are picked randomly from the available
pieces. Currently bots use the same pieces as
humans, though I might extend the piece
definitions to allow some 'bot-only' piece
definitions.
The
Player List
On
the right in the Book of Tactics is a list of the
current players. Up to four players may take part
in a single battle. Try right-clicking on a
player name to get a menu of extra commands.
For
each player you can see their color, name, the VERSION of assets they have
(ideally you would all have the same version) and
their current 'score info' which is depicted
as two numbers: the number of pieces left in
their army, and the total sum of remaining hit
points on all their pieces. When these numbers
reach zero, that player is out of the game.
|
How Do I Play WoS Tactics?WoS Tactics is a
TURNS-BASED strategy game. Each
player commands an army of
pieces (no
more than nine, and possibly less depending on
the world developer and the scene host).
A single
player's turn consists of commanding some number
of their individual army pieces, after which it
is the next player's turn to move some number of
their pieces.
The maximum
number of pieces in a single army is nine, but
may be less depending on the host's selection.
A piece's move
consists of several parts:
- movement (walk some
distance)
- attacking (enemy unit in
range after walking)
- suffering counter
attack (if any)(someday)
So, first you
select the piece you want to move (by clicking on
it). You immediately see a purple highlight of
all the tiles to which you could legally move
that piece (the white tile is just the one you
are currently pointing at):
Click on a
purple tile and your piece will walk there. Note
that some tiles cannot be crossed (and you will
have to walk around them) and some tiles can only
be crossed by special pieces (fire-walkers, for
example).
Each piece has a
'mobility' value which indicates how many
steps it may take. (steps are always taken north,
south, east or west, so moving 'northwest'
requires two steps). You cannot walk to a tile
containing another piece, friendly or not.
To help you plan
your attack, some orange outlines around the
'white' tile will show you what tiles your piece
could attack *after
moving to that tile*
Once your piece
arrives, a new set of orange highlights will
appear showing all the tiles where your piece
could legally attack.
In fact, you can
only attack a tile with an enemy piece
on it! Pieces may have different weapon ranges
(both minimum and maximum ranges). If you have no
legal attacks, you can cancel the attack phase by
clicking on one of the orange squares (otherwise
you have to push the cancel attack button).
|
How Do I Fight?Once you have walked your
piece within range of an enemy piece, you just click on
the enemy piece (assuming it is standing on an
orange-highlighted tile, of course) and a little
battle will play out with some result. The enemy
piece may take some damage and may die, being
removed from the board.
You can get an
idea as to HOW it will play out beforehand, just
by pointing at the pieces in question. When you
point at a piece, an information window pops up
with a description of that piece's stats, as well
as an estimated amount of damage you would inflict if you
attack it with your currently selected piece.
For example, in
this case it estimates we would deliver 3 hit
points of damage to the Harpy if we attacked it
with our currently selected piece. But we have a
50% chance of missing. We also have a 0%
chance of making a critical hit (a larger than
normal hit) in which case the hitpoint damage
would be about 75% more.
Note there is very
little randomness in WoS Tactics (other than
the chance of hit and crit, you can pretty much
predict exactly how much damage you WILL do,
based entirely on the stats of the attacker and
victim.) This is, in fact, the point of the game,
picking the best pieces to attack and attack
with.
Pay particular
attention to weapon classes, since a
rock/paper/scissors effect may be in place and
your piece might be particularly sensitive to
attack by an appropriate counter piece.
Piece
Stats and their Meaning
- HP
(Hit Points) This is how much life is
remaining in the piece, it is what you
lose when you are hit. When it reaches
zero, the piece is dead. The max
(starting) HP is also shown. At present,
there is no way to heal in battle.
- MP
(Mana Points) Mana is used to cast
spells, which are not currently
supported, so therefore hard to document.
There will be no way to recharge mana in
battle (WoS Tactics games are intended to
last only a few minutes, not for hours)
- STR
(Strength) This affects how hard you hit
- DEF
(Defense) This affects how well you
resist the other guy's strength
- AGI
(Agility) This controls how likely you
are to miss. If the attacker's agility is
two (or more) higher than the target, he
will not miss. Below that, there is a 10
% increase in missing for each additional
difference in agilities (that probably
sounds confusing, and I might even be off
by 10%. But basically it is completely
predictable.. even to the degree that a
low enough agiilty piece will ALWAYS miss
when attempting to hit a sufficiently
higher agility piece)(thought that might
be a bad piece design strategy for the
world developer who wants balanced
gameplay)
- RST
(Rest) This tells you how 'rested' the
piece is. It is rendered in red if the
piece currently is not rested enough to
actually take part in a turn. Your pieces
receive one unit of rest at the start of
your turn, and lose one unit when they
move, and another unit when they attack.
- RNG
(Range) This controls how many 'steps'
your weapon can take (how far it can
shoot, but using that same NSEW
limitation on movement). A minimum range
can also be assigned to a piece (kinda
rare, one assumes) so that a long range
attacker might have to be careful to not
get TOO close to its target.
- MOB
(Mobility) This controls how many 'steps'
the piece may move during its turn. Steps
must always be taken north, south, east,
or west. So moving northeast, for
example, is two steps.
- MOV
(Movement) This identifies which tile
types the piece can cross. Movement types
are identified by a single letter meaning
(E)arth, (A)ir, (F)ire, and (W)ater. Most
pieces can only cross earth (dirt). But
the world developer can assign any
combination of movement types to any
piece (and any tile).
- LEV
(Level) This shows the piece's current
level. All pieces currently start the
game at level 1, and earn XP (Experience
points, not shown) for taking part in
fights. A piece's level is used as part
of the battle equations.
- XP
(Experience Points) Pieces earn
experience when they attack other pieces,
and a bonus if they kill the target. When
enough XP is attained, the piece levels
up (and gets a recharge of its HP, MP,
and Rest) The popup info window for one
of your own pieces includes an XP meter
just below the caption, this fills as
your piece approches its next level.
Rolling
New Pieces
The world
developer is in charge of defining the available
pieces for WoS Tactics battles played in their
world. They can use any strategy they like for
tuning these pieces. In Evergreen, I have chosen
to use a basic zero-sum policy in the sense that
all pieces have stats that add together to the
same value (for the most part)
The idea is that
you will be able to pick your army from the
available pieces and thus by picking a better
army (from the same pieces available to everyone)
you will do better.
Note that unlike
in WoS itself, at the start of a WoS Tactics
battle, *all* players are equal, so the result of
the battle should be entirely based on your
tactical skill, whether you are a newbie or an
oldbie.
World developers
can assign 'requirements' to pieces and maps such
that unless your WoS character meets those
requirements (say, via levels and tokens and
such), you will be unable to host that map, or
use those pieces in your army.
Battle
Equations
Unlike WoS, I
intend these to be completely documented (and
simple). Note that there are some limits enforced
(ratios are generally limited to '20'), and no
divide-by-zeroes are allowed. Run-time stats are
used (some stats increase during a battle, due to
levelups)
- ChanceOfMiss
= (tgtAGI - AGI
+ 1) * 10 (limited to 0-100). If attacker
is at least 1 point higher in agility
than target, then it will not miss.
Otherwise miss percentage increase 10%
per difference in agility.
- ChanceOfCrit
= 12.5 * ( (AGI+STR+RST)
/ (tgtAGI+tgtSTR+tgtRST)
) Basically if the attacker has TWICE the
overall stats (sum of agility, strength,
and restedness), they have a 25% chance
of a crit. Higher ratio, higher crit
chance.
- DamagePoints
= weaponDamage * ( STR /
tgtDEF ). If the
attacker's weapon dominates the target's
(rock/paper/scissors), then the tgtDEF
is halved.
use the
/tacticsBalance command to get a little report of
which pieces are particularly under- or
over-powered, if any.
|
How Do I Win WoS Tactics?Game ends when...
(possible outcomes)
- loss of all
armies, but one.
- time
expires (limit game to N minutes) with
high score (not implemented)
- loss of all
'king' pieces but one (not implemented)
- alliances
(maybe) treated as one army (not
implemented)
And as I type
this, the only Game Over condition implemented is
"all armies dead but one" and the game
tracks first, second, and third place. (fourth
place is implicit and just referred to loosely as
'the loser') Your army is ashamed of itself, but
doesn't blame YOU.
|
How Do I Know
What is Going On?It's a busy battlefield
and you might get a little lost (thank goodness
it is turns based so you can catch your breath
from time to time). But there are some elements
to help you.
Some
Buttons along the bottom:
(world developer
can change these, but my buttons are so perfect,
it would be heresy to do so!)
Generally,
pointing to a button will also bring up a line of
text telling you what it does. Sometimes play
hints appear there as well. The big
button on the left toggles the HUD (The "Book of
Tactics" in fact) where you can see the
minimap and current player status.
The next button
over is the 'Skip Move' button which you push
when your piece is already where you want it to
be and you don't want to move it just because the
purple highlights are showing you where else it
could be. That's supposed to look like a pair of
legs (Thanks, Josh!) under an internation 'no'
symbol. This switches to the attack phase of the
piece's move.
The next button
over is the 'Skip Attack' button (shown dimmed
right now because we are still in the 'movement'
portion of the piece's move.). This button is for
when you choose to not attack. It ends
this piece's move, but not your turn (unless this was the
last movable piece you had).
The next button
(red check mark) is the 'End
Turn'
button which relinquishes the
rest of your turn (and I don't currently ask for
confirmation of this, so don't push it by
accident!) The game is training you to be
thoughtful and deliberate :-)
Some
Text along the top
This is where
you can see whose turn it is and whether they are
in a walking phase or an attacking phase. The
main screen will automatically center on the
action as pieces are moved and attacks are made.
(so much so that you should just give up and wait
until it is your turn before clicking around to
look at other spots on the map)
Hey, this might
be a good time to mention that if you
RIGHT-CLICK on a TILE, it centers the view on
that tile.
If you have been
waiting more than 10 seconds, then the little
timer appears (here we have been waiting 22
seconds). There is no automatic time-out yet, but
I plan on having something in the right-click
player menu to allow the host to dump you if you
stop playing.. turn you into a bot probably.
Some
Button/Meter Things along the side
When it is your
turn, these buttons will appear along the left
side of the screen. They are proxies for your
remaining pieces (note the blank spots where my
pieces 1 and 6 used to be -- they're dead now).
If you POINT to
one of these buttons, the info popup will appear
just as if you pointed to the piece it represents
(which may not be on screen at the moment).
If you CLICK on
one of these buttons, it is like clicking on the
piece (plus it will center the main screen view
on that piece).
The button is
wide if the piece could still be moved during
this turn, and narrow if the piece has already
been moved this turn (or otherwise unavailable
this turn - say it is not sufficiently rested
from its previous move).
There is a small
life meter graphic at the extreme left of each
button, showing the percentage of remaining HP in
that piece.
|
How Do I Define
my Army and Formation?There is a small combo
box at the bottom of the Book of Tactics dialog
which lets you switch between three 'views': map,
army, and stats.
When you select
the 'army' view, you see something like this:
Here, you are
given the opportunity to configure the nine
pieces which will be your army. This
configuration is remembered as part of your WoS
hero files (a separate default army configuration
per WoS hero).
To change a
piece, right-click on one of the nine tiles and
select a new piece from the popup menu. If a
piece in the menu is grayed out, it means your
army either already has as many of that kind of
piece as it can, or your WoS character is lacking
some requirement to use that pieces (pieces can
be limited by your WoS character level and
accomplishments).
Note that you
can only select pieces after the Tactics Scene
has been created, but before the battle has been
launched.
During the
battle, the nine tiles on this screen also work
as proxies, allowing you to quick-select your
pieces. The prominent value ("17/7
Rock")
shown here and on the menu, is a short form
description of the piece. The 17 (in this case)
being the sum of HP, STR, DEF, and AGI values,
and the 7 being the sum of MOB and RANGE.
|
Player Stats?The Book of Tactics also
tracks how well you have done in the past. There
is a small combo box at the bottom of the Book of
Tactics dialog which lets you switch between
three 'views': map, army,
and stats.
When you select
the 'stats' view, you see
something like this:
Here, you get to
see your overall performance, as well as
information about other players. (Only for other
players in the current battle). For example, in
this display we see that Bot Blue has lost 2x to
me. And I (Cheeta) have won a total of 3 games.
By inference, I must have beaten some other
unlisted player once (someone who is not around
right now.. (in fact, it was Bot Yeller!))
In addition to
your win/loss counts and percentages (there is no
tie in tactics!), human players are also given a
numeric 'rating' (using the chess rating
algorithm). While the bots *appear* to have a
rating, you never gain or lose rating when
playing against a bot, so it isn't 'real'
Note: you cannot
see another player's "total" stats,
just their stats relative to you, from battles
you both fought in. But your OWN line in the
table is your total stats.
I suppose that's
confusing, oh well.
|
Rock, Paper,
Scissors?Each piece is assigned a weapon
(designed by the world developer) and each weapon
is assigned both a weapon class of its own, and
the class of a weapon which has no defense
against it. Hence your sword might be of class
'rock' and my mace might be of class 'scissors'
and thus I have less than normal defense against
you. Your rock dominates
my scissors.
In such a case,
when you attack me, the calculation is made as if
I had fewer defense points than normal (see
battle equations above).
You will want to
factor this into your planning, and get used to
the weapon classes in the world where you are
playing. To keep it simple, in the world
Evergreen the classes are literally
"Rock", "Paper" and
"Scissors" to make it easy to remember.
(this may change, and I apologize if I havent
updated the documentation)
|
Level Up?Each piece starts the
battle at level one, and increases in level with
experience earned by attacking. You earn more
experience for attacking a higher-level piece
than a lower-level one. You earn experience each
time you hit your target, and double experience
for destroying the target.
When your piece
levels up, it also gets a recharge
of its HP, MP, and rest, which
could be a life-saver.
Levelling up
also increases the 'run-time' value of some of
your pieces attributes from the base level of the
piece at start of game
- runtime STR
= base STR + level - 1
- runtime AGI
= base AGI + level - 1
- runtime DEF
= base DEF + 2 * (level - 1)
- runtime
maxHP = base HP + 2 * (level - 1)
- runtime
maxMP = base MP + 2 * (level - 1)
For various
technical reasons, I cannot boost a piece's
mobility or attack range as it levels.
|
Map Elevation?Not all maps are
completely flat. Some may look a bit like this:
The individual
tiles bump up and down a little relative to each
other. The idea is that units cannot cross from
one tile to another if the elevation difference
is too great (either up or down) unless the piece
has the ability to 'cross air' (in which case it
is assumed it could fly).
This elevation
information is different from the piece/weapon
'movement' where individual tiles can be assigned
a terrain type (earth air fire and water) and
only pieces which can cross that terrain type can
cross/stand on them.
Map Designers
can choose to have a flat map, or provide
elevation data by one of two techniques. They can
provide a matching 'elevationBitmap' for their
map's tile bitmap, or they can provide a random
seed and roughness value whereby a random
elevation bitmap will be created automatically.
Either way, a
elevation bitmap will end up looking something
like this (enlarged 4x for clarity):
Where black
represents the lowest regions (elevation 0) and
white the highest (elevation 255). Elevation
bitmaps are also made using the standard WoS
Palette so not every since elevation value
between 0 and 255 is available.
(Technical
explanation: The elevation bitmap has a value of
0-255 for each pixel, which references a color
value in the standard WoS palette, and the RED
component of that color value is ultimately what
is used for the elevation value.)
A flat map would
be 'all black'
If you, as a map
designer, provided an elevation bitmap, it would
probably be because you wanted to add walls and
ramps and such.
|
What About My
Guild and Guild Wars?Lots of potential
integration with the WoS guilds system is
conceivable, but at present the only option is to
award 'war points' to open Guild wars (resulting
in advancement/demotion on the war guild ladder
for the world in question).
WoS Tactics is
an army battle, however, and the technology is
based on all pieces of an army being commanded by
a single player. Hence it is unlikely there will
ever be a version where individual pieces are
controlled by individual guild members (plus my
general feeling that a turns-based game with
*too* many players is unlikely to have a chance
of ever completing a turn, what with everyone
needing to go to the bathroom, get a drink, and
pick up their kids from soccer practice).
If the world
developer has enabled it, the winner of the
battle will earn War Points to be applied to all
open wars with the people who lost the battle.
For points to be earned:
- the winner
must have been wearing a guild uniform
- the
loser(s) must have been wearing a guild
uniform
- there must
be Open Wars between those guilds at the
time the Tactics battle started and
ended. (and at the time your character
incarnated)
But within those
criteria, the first place winner can earn up to
3x the total war points (as individual awards for
beating the second, third, and fourth place
players if all were taking part in guild wars at
the time).
The second place
winner can also earn points (1/4 the amount of
the winner's) for beating the third and fourth
place players.
And the Third
place winner can earn a few points (1/16 the
amount of the winner's) for beating the fourth
place player.
The world
developer assigns the base point value. For
evergreen that is 1000 points. (you
do NOT earn points for beating bots).
|
|
World
Developer Info
|
What About My World's Quests?Presently, WoS Tactics is
just a mini-game and is mostly 'orthogonal' to
the quests in your world. However, it is
completely possible that future extensions could
include:
- Scripted
Battle starts (QUEST command to start
battle with a particular map and set of
human/bot players)
- Results of
Battle returned to QUEST via cookies
- Tactics
Battles as an alternate form of FIGHT
scene
- Tactics
Maps based on world map locations
- Pre-populated
'monster' pieces in Tactics Battle
- Potentially
some QUEST scripting within the battle
itself (based on QUEST 'events' issued by
the Tactics engine)(and QUEST commands to
then alter the battlefield in some way -
providing a new weapon, adding/removing
pieces, crediting tokens/xp/cash to
player character...)
- Tactics
Battle 'missions' (like can you get your
army to safe spot on Tactics Map within X
minutes and battle N monsters along the
way?)
- Specialty
Battles (capture the flag, etc.)
facilitated by scripting.
Of course, none
of that exists as of this writing. What DOES
exist is:
- The ability
to host all your world's Tactics assets
on your own web site
- The ability
to publish new maps and pieces just by
adding them to your tactics_ini.txt
control file and updating the assets on
your web site
- The ability
to limit access to certain pieces based
on a WoS conditional string, like
"L3+T23" (needs level 3 and
token 23 before you can add this piece to
your army)
- The ability
to limit access to certain maps based on
a WoS conditional string, like
"L34-T12" (needs level 34 and
the ABSENCE of token 12 in order to host
a battle scene with this map -- but
anyone can play in it)
|
How Do I Add Maps and Pieces to My World?As a world developer, you
control all the assets in your world's 'tactics'
folder, and can host assets on your own web site.
As a player, you should not be manually fiddling
with these files (though there is nothing
stopping you from doing so, for example to make
new maps and share them with your friends and try
to get some world developer amenable to adding
them to his or her world. I am very amenable,
hint hint)
You can create
the following:
- Maps (each
pixel color means one of 255 tiles)
- Tile Images
(what a tile *looks* like)
- Tile
definitions (movement attributes and
assignment to map colors)
- Army Piece
Skins (use the WoS "monster"
skin format, preferably the 96 pixel high
filmstrip format)
- Army Piece
definitions (piece names and stats)
- Sound
effects (.wav files)
- Sound Sets
(which sound effects can be picked at
random for a specific 'event' like
"piece indicating it is ready to
go" can say "ready",
"ok", or "leave me
alone!"
- Buttons (my
buttons are PERFECT, leave them
alone!)(not WoS format)
- Weapons
(defines their class, class sensitivity,
damage, and sound effects)
Your maps and
available pieces are all defined in your world's
"tactics_ini.txt" file, and your
tactics-related bitmaps (maps and tiles) are in a
world subfolder called 'tactics'
NOTE: each
world has its own tactics folder. There is
no common tactics folder for all worlds. You must
use the Download Tactics button on the Book of
Tactics hud to fetch the assets for the world's
tactics. This downloads files from the
developer's web site and leaves them in the
world's tactics folder.
Please see A96
(or later) Evergreen for examples. Read the tactics_ini.txt file in particular for
many useful details.
- Each MAP is
defined in its own section
- Each MAP
has an associated bitmap in the tactics
folder
- map bitmaps
are 256 color (WoS palette), small, and
square (32x32 is suggested, as a 'large'
map). they MUST BE SQUARE (as wide as
they are tall) or they will just be
rejected as unplayable.
- when you
paint your map, each pixel is a 'tile'
and the palette color index is the tile
ID (1-255, with 0, black, reserved for
'not rendered'). Some additional color
indices are reserved for 'starting player
positions' (see evergreen tactics_ini.txt
for
details)
- your
tactics ini file also defines each of the
tiles you use, for each tile you provide
the name of its own tile bitmap, and its
movement attributes ("requires AIR
movement for piece to cross it").
- Each TILE
has its own BMP file (128x128 with
'diamond' in top half, and palette index
6 as transparent) which is what is
rendered in game. The bottom half
'completes the cube' so that later I can
add elevation aspects to the game.
- Your
tactics ini file also defines each of the
PIECES available for that map. For each
PIECE you specify a WoS monster skin
(general or world-specific).
- The tactics
ini file also defines certain numeric
attributes for each piece, such as its
HP, armor, weapon, range, mobility, etc,
which affects how it can move.
Click here to
see an: Example Tactics_ini.txt
file
As a world
developer, your world's config.ini file controls
the source of your world's tactics assets
(specifies the url from which they can be
fetched) (see "tacticsSourceUrl" in the
evergreen config.ini file for details)
Example
Tactics Monster Skin
You should place
your monster skins in your tactics folder (you
are allowed to have subfolders, so I put mine in
"tactics/skins"). Note that unlike a
WoS monster, there are some special colors which
will be dynamically recolored with the team
color. So the orange colors in the example will
actually be turned into shades of red, blue,
green and yellow, depending on which army they
are in.
Like a WoS
monster, the frames are:
- 0 - credits
- 1 -
standing around
- 2 -
attacking
- 3 - being
hurt
- 4 -
alternate standing around
Idle pieces will
tend to change between the two standing frames.
During the attack the attacker will toggle
between standing 1 and attacking 2 (sort of like
repeatedly chopping a tree), while the target
will hold the pain 3 pose and flash all red
during each hit.
While my example
above is a JPG, the REAL file format must be a
256 color BMP file using the standard WoS palette
(and must use color index 6 for the background
transparent color)
If floating vs
standing is implemented someday, it will not be
by the top left pixels as in wos, it will be in
the piece definition in the tactics ini file
Please continue
to obey the WoS Shadow spec (bottom sixth of the
cell is shadow area) though I currently am using
an oval shadow for all pieces, I might suddenly
start using the skin's real shadow information.
My fear is that
people will succumb to the desire to use really
large skins, which won't actually fit on the
tile, or block the view of smaller pieces on
adjacent tiles. Please use your own artistic
judgement.
I plan to
eventually provide a 4 angle camera 'map
rotation' once elevation data is included. It
also occurs to me I could have a another sort of
thing called 'object', placed by yet another
map-sized bitmap, which would place trees and
fences and castle walls and such, as objects
sitting on top of tiles (probably always making
that tile impassable to ground movement), but I
know this would lead to some additional graphical
issues (for example, a flying unit flying 'over'
them would actually be drawn 'in' them in a
unhappy way). But this could play into my desires
for powerups (treasure chests) so I will keep
thinking about it.
Example
Map Tile Skin
I keep these in
"Tactics/Tiles". They are also 256
color (WoS Palette) BMP files. For a completely
flat map you would only see the top diamond
shape. But once elevation is supported you will
see the sides of the cube if the tile is a little
higher than its neighbors.
Tile skins have
very tight constraints:
- Must be 256
color BMP files using WoS Palette
- Must be a
single square image, exactly 128 x 128
pixels in size
- Must use
color index 6 of the palette for the
transparent background
- the top
half of the image must be a perfect
diamond as shown (filling the top 128 x
64 of the image). The map is rendered by
drawing tiles next to each other, so they
need to align perfectly. Not all of my
current tiles are actually perfect, so
there is room for you to improve that.
- The bottom
half must 'look nice' *unlike example*
when someday elevation pushes it up a
little (think Q-Bert)
- The
contents of the diamond should look like
a nice surface your pieces can walk on
(or fly over).
- The game
WANTs people to see the grid, so you
probably want to retain the black line
around the diamond
- You should
send me all your cool tiles, so I can add
them to the evergreen tactics resources!
Example
Map Image
(Shown 4x real
size for clarity). I keep these in my
"tactics/maps" folder.
Technically your
map images could be any size, so long as they are
square. (as wide as they are tall, in pixels).
However, in practice 32x32 seems like a pretty
huge map when you're playing it. You're free to
disagree, but it's not a lot of fun to have to
march too far a distance before battle can begin.
I cannot stress
enough that all these BMP files MUST USE
THE WOS PALETTE. Not just ANY 256 colors, but the
VERY SPECIFIC WOS PALETTE (documented elsewhere,
maybe here,
and available in
your wos/art folder as souls.pal)
So, when using
the wos palette, each color is identified by its
"color index" which is between 0 and
255.
In a map, those
indices indicate which TILE will be drawn in that
location (thus making the map render 128 times
larger than your dinky little map image). in your
tactics ini file, you will call out exactly which
color index you mean to use for each tile. Like
"tile50 = 'tiles\tileLava'" to mean color
index 50 is going to use your tileLava.bmp tile image which is in
your world's tactics\tiles folder.
Hopefully this
drawing adds some clarity
In general you
are in full control over which color indices you
use, and it's nice if you map a generally orange
palette color to your lava tile (if you have one)
just so the mini map sort of 'makes sense' when
you look at it, but you don't HAVE to do that.
The only color
indices which are 100% reserved at the moment
are:
- 0 - black,
used as the 'boundary of the map and
completely impassable to all pieces'
tile. No actual tile is drawn for black
pixels.
- 249, 250,
251, 252 - Your map should have exactly
one pixel of each of these colors, to
indicate the starting locations of the
four armies (red, green, yellow, blue).
|
How Do I Add Stuff, in Specific?The above got a little
rambly, so here are some more succinct
instructions:
Adding a
new Map Tile
- Draw a new
tile image (256 color BMP, special WoS
palette), following the pattern of the
existing examples
- Add a line
to the [Tiles] section of the
tactics_ini.txt file which defines which
color index represents that tile.
Adding a
new Map
- Draw a new
map image (256 color BMP, special WoS
palette), using special colors to place
tiles where you want them
- Add a new
section [mapNN] to your tactics_ini.txt
file (where NN is your map's Id number.)
and populate it with the required
information
- Bump the
'numMaps' value in the [general] section
to include your new map id number.
Adding a
new Piece
- Draw a new
piece skin image (256 color BMP, special
WoS palette), using the special golden
colors (which will be replaced by team
colors at run time), following the
example of an existing skin
- Add a line
to the [Pieces] section of your
tactics_ini.txt file, and fill in all the
properties for your piece.
Adding a
new Sound Effect
- Record your
new sound effect as a WAV file (I use
11KHz mono). Keep it short (a second or
two)
- Add a line
to the [Sounds] section of your
tactics_ini.txt file, to associate it
with a sound id number (1-255)
Adding a
new Sound Set
- Add a new
line to the [SoundSets] section of your
tactics_ini.txt file, to assign a unique
sound set id (1-255) to your new set
- Add some
sound Ids to your set, following the
examples (sound ids should be for
existing sound effects in the [Sounds]
section. A Sound Set is just a way of
saying 'play any one of these sounds' so
some variety occurs.
- Use your
sound set id in one or more of your PIECE
or WEAPON items
Adding a
new Weapon
- Add a new
line to the [Weapons] section of your
tactics_ini.txt file, which gives your
weapon an id (1-255), a name, some damage
points and assigns it to a weapon class.
Also provide a weapon class against which
this weapon is super effective (paper
dominates rock)
- Use your
new weapon id in one or more of your
PIECEs
Specifying
Source of WoS Tactics Assets for my world
- Add a value
like "tacticsSourceUrl=http://www.synthetic-reality.com/tactics" to your
world's config.ini file.
- This
identifies a web directory where you
should maintain an exact copy of your
world's "tactics" folder.
(remember, do NOT include your world's
tactics folder with the world itself,
unless you plan to ONLY change it by
releasing full world patches.)
Integrating
WoS Tactics with my world's War Ladders
- Add a value
like "tacticsWinGivesWarPoints=1000" to your
world's config.ini file.
- This
defines the number of points (use 0 to
disable the feature) which a first place
winner will earn for each gulid warrior
s/he defeats. (so if four players took
part, all in guilds with open wars, then
the first place winner would get a total
of 3000 points (1000 in each war) for
beating the 2nd, third, and 4th place
players.
- The second
place player earns 1/4 the number of
points for beating the third and fourth
place players (if they exist, and were in
a guild with which s/he had an open war
on the ladder)
- The third
place player earns 1/16 the number of
points for beating the fourth place
player (if any)
|
How Do I Host Tactics Assets on my Web Site?First you develop your
assets inside of your world's tactics folder
(being sure to keep backups of your work
elsewhere since you will inevitably overwrite the
assets in your tactics folder when testing the
fetch-from-web functions...)
So, for example,
perhaps you added a new piece skin to:
c:\WoS\Worlds\<yourWorldName>\tactics\skins\myNewSkin.bmp
And you added a
PIECE definition to your tactics_ini.txt file:
c:\WoS\Worlds\<yourWorldName>\tactics\tactics_ini.txt
Once you have
thoroughly tested your work, you then copy your
entire world tactics folder to your website, say
to:
http://my.website.com/tactics
This assumes you
have the ability to create directories on your
web site and copy files to them. If not, then you
need a different web site. You will probably use
'ftp' to copy these files. Your goal is to have a
url which points to a tactics directory on your
web site which looks identical to the tactics
folder on your PC in your world's directory.
For this reason,
you are advised to not use spaces (or any special
characters) in your directory names and file
names. Try to just use letters, numbers, and
underscores, as in
"tactics/sfx/animal_sounds/chicken_biting_corn.wav"
as opposed to "tactics files/sound
effects/>>>>&&&coool
xxXXXXxxxplosion!!!@@@.wav" as you will
probably find you cannot successfully upload such
files. And sorry, rest of the world, you probably
want to use just the boring original ASCII
character set and leave your cidilles at home...
This means
people can download files individually as they
need them (and you can upload changes
individually). The only reason this is possible
is because your main control file (tactics_ini.txt) lists every single
asset needed.
config.ini
set up
In addition to
copying your assets to your web site, you must
also set the config.ini file in your world to
have an entry which tells users of your world
where the assets should come from.
For example:
tacticsSourceUrl = http://www.synthetic-reality.com/tactics
That is the url
to the folder/directory containing all the
assets. It may be further subdivided by
subfolders/directories (but the layout must
exactly match the subfolders of your world's
tactics folder)
Assuming you
don't lose your web site, you should only have to
set the config.ini entry once, and thereafter be
able to freshen assets on your web site with
abandon.
When users press
the 'Download Tactics' button on the Book of
Tactics, they will first fetch the tactics ini
file from your site, and then fetch each of the
individual files described in it. It is my naive
hope that this fetching methodology will be more
free-website-friendly since the individual files
are generally very small and should be less
likely to lead to bandwidth capacity overruns.
NOTE: Since each
world has its own tactics folder, you cannot
accidentally overwrite assets in some other
world. But you CAN overwrite your OWN work, so
be sure to keep backups in a safe place (outside
of your WoS folder).
NOTE: I changed
the name of "tactics.ini" to
"tactics_ini.txt" since some free web
hosts refuse to let you host .ini files.
|
Version Control/LockingYou can set a version
number for your WoS tactics, and players can then
choose to not download new assets if they have a
matching version. (They can also force download
if they feel their copy is not a match to your
current file set.
Setting
the Version
In your
tactics_ini.txt file, in the "general"
section, add a value like this:
[general]
version = 1.2345
The version is
an actual number, not an arbitrary string, so you
should have exactly one decimal point with
numbers on either side of it. You may have up to
4 digits of precision to the right of the decimal
point.
You should
change your version number whenever you change an
important file (like a map or ini file). Changing
an indivdual piece graphic or sound effect might
not be 'important enough' to bump the version
number, since people can probably play happily
with the older version. But mis-matched INI or
map files will lead to loss of game sync.
Locking
your Assets
As a world
developer, an unintended asset download could
overwrite your local assets with the copies from
your web site (which might obliterate your most
recent work). You should always scrupulously keep
backups of your tactics folder in a safe place,
but you can protect yourself from accidental
overwrites by 'locking' your assets.
To do this, add
a "locked=1" entry to your wosTacticsSettings.ini file (which is in your
world's SAVE folder)
For example, to
lock evergreen tactics assets, I would edit this
file:
c:\wos\save\evergreen\wosTactics.ini
By adding this
to the general section
[general]
locked = 1
Note that the wosTacticsSettings.ini
file is created automatically as
needed, and may not exist initially (in which
case you will have to make it yourself!). This
file is where the game keeps settings which are
global to the world (shared by all characters in
that world), for example the current version
information.
|
Notes
- A96 will
probably not impose tight checking for
hacking, since that would also limit
'easy development of new maps.' That will
come later. If you feel compelled to
cheat in WoS Tactics, then we all pity
you.
- If you want
to develop maps but don't want to make
your own WoS world, try to work with a
world developer. But in the mean time,
you can replace assets in an agreed upon
world and manually share them with
friends while you are developing them.
Then, when you're ready, try to con some
world developer into including them in
their world.
- Note that
for the game to work correctly, all
players must have the same assets. But it
is the scene host whose assets will be in
control. So if you have different assets
than the host, the host may alter your
turn as needed (for example, force you to
skip a turn if your move appears to be
illegal from their point of view). The
VERSION information tracks the contents
of each player's copy of the tactics ini
file, but does not track the map files,
which can be equally important for the
game to make sense.
- And just to
stress that again, the assets are NOT
peer to peer in this case (you do NOT
fetch assets from the scene host.) Assets
come from the world developer's
designated web site, and are fetched by
using the "Download Tactics"
button on the Book of Tactics HUD.
|
The Future of WoS TacticsI did this on a lark,
during a few hours when I felt well enough to
follow my bliss. I made it part of WoS because it
was the easiest to do so (yay, code re-use!)
(Though my original plan to have your army be
your 'WoS character and its pets' sort of went by
the wayside due to my desire to have all teams
start out equal, and the need to tightly control
image sizes and team colors. Still I could see
having the King character have a way to 'inherit
your wos skin' if not your actual WoS
stats.)(though it would be hard to dynamically
colorize and colored shadows were a failed
experiment)
I fully expect
to get various forms of feedback, including the
dreaded "I want to make my whole world use
this map format, make it so the main map can use
this and I can have huge maps!" and I will
have to say 'no' to that for a very long time.
"Well how about making all scenes like
this!" and again, the answer must be 'no.'
Think of this as
the first *multiplayer* mini-game in WoS. But
fundamentally it is still just a mini-game in WoS
and does not replace any part of the main WoS
engine. Anyone who has played TurnAbout knows I
have a perverse tendency towards games within
games within games. (And yes, I thought about
doing this in Arcadia, but frankly, I thought it
would be more fun for the WoS community)
But personally,
I would like to add:
- More attack
styles (magic basically) without getting
too complicated
- Possibly
some powerups on the map (to boost your
armor, or get a new weapon)
- Maybe let a
bot character play more of a role of
random monsters appearing on the map (who
could then drop the powerups)
- Beef up the
bot AI as needed. Pretty simple right
now, though it seems it actually wins on
occasion, which seems pretty magical to
me...
- I am open
to the concept of more animation frames,
though the psuedo-3D technology I opted
for doesn't really allow me to move
pieces smoothly across the map (currently
they have to 'hop' from tile to tile)
- Beef up the
effects animation.
- Beef up the
right-click player menu so the host can
manage the players better (promoting from
bots, booting evil players, etc.)
I tried to keep
the design as open as possible, so world
developers can change the look and feel, as well
as providing a large number of maps and pieces.
This was the original impetus for not including
any Tactics Assets with WoS itself (you HAVE to
download them once at least). Otherwise, I would
have to release new versions of WoS just to add a
new tactics map (and if you changed something on
your own, your copy of WoS would be unpatchable
when the next release came out).
|
DedicationI'd like to dedicate WoS Tactics
to my pal, Josh Worts, from whom I haven't heard
in several years and who I hope is doing great
and enjoying a happy life. I'd like to think this
is close to something he asked for many years
ago. Everybody think a happy thought for Josh!
|
|
|