Subsections
Frame Numbers
Frames are the graphics, stored in all those FSH and FS2 files, marked by frame numbers and used just about
everywhere. Out of all the graphical frames there are in Furcadia, we will be focusing on the ones that are
responsible for our character - the little 3D-looking guy that walks on the map. Just for these characters,
there are 12 FSH files (Approximately 800 frames in total) that present these characters in positions that
they can be in.
Since the Squirrel Update, there are two more player FSH files with approximately 220 frames and optionally,
you can also add up to 4 "local species" files, 20 frames each (only 1 if you aren't Guild Package owner!)
Frame Arrangement for Each Group
All those 800 frames, as we know them, are arranged in groups of 20 frames and each of these groups is properly
ordered. Here is a table, showing this particular order of each frame group:
Offset |
Direction |
Position |
0 |
SouthWest |
Sitting |
1 |
SouthWest |
Right Step |
2 |
SouthWest |
Standing |
3 |
SouthWest |
Left Step |
|
Offset |
Direction |
Position |
4 |
SouthEast |
Sitting |
5 |
SouthEast |
Right Step |
6 |
SouthEast |
Standing |
7 |
SouthEast |
Left Step |
|
Offset |
Direction |
Position |
8 |
NorthWest |
Sitting |
9 |
NorthWest |
Right Step |
10 |
NorthWest |
Standing |
11 |
NorthWest |
Left Step |
|
Offset |
Direction |
Position |
12 |
NorthEast |
Sitting |
13 |
NorthEast |
Right Step |
14 |
NorthEast |
Standing |
15 |
NorthEast |
Left Step |
|
Offset |
Direction |
Position |
16 |
NorthWest |
Laying |
17 |
NorthEast |
Laying |
18 |
SouthEast |
Laying |
19 |
SouthWest |
Laying |
|
Note: The fields marked in green indicate the frames that are used in the walking sequence of that
specific character, depending on the direction it is facing. The sequence goes in a "bouncing" manner (e.g:
1 2 3 2 1 2 3 ...). Not only the server is responsible for making your character walk, but also the client.
The client loops through these frames as it moves the character from one position to another. The intensivity
of such loops probably depend on your animation setting (F11).
Character Frame Groups
Now that we have familiarized ourselves with the structure of each frame group, time to look at the big picture
of it all. Here I will list all the frame groups known to me along with the FSH files these groups can be found
in:
Normal Form
Start |
|
End |
Description |
Offset |
|
St.Frame |
|
En.Frame |
Filename |
0 |
|
|
Nothing |
0 |
+ |
0 |
- |
|
PLAYER.FSH |
1 |
- |
20 |
Rodent |
0 |
+ |
1 |
- |
20 |
- - - |
21 |
- |
40 |
Equine |
0 |
+ |
21 |
- |
40 |
- - - |
41 |
- |
60 |
Feline |
0 |
+ |
41 |
- |
60 |
- - - |
61 |
- |
80 |
Canine |
0 |
+ |
61 |
- |
80 |
- - - |
81 |
- |
100 |
Musteline |
0 |
+ |
81 |
- |
100 |
- - - |
101 |
- |
120 |
Lapine |
101 |
+ |
0 |
- |
19 |
PLAYER5.FSH |
|
Butterfly Wings
Start |
|
End |
Description |
Offset |
|
St.Frame |
|
En.Frame |
Filename |
661 |
- |
680 |
Rodent |
660 |
+ |
1 |
- |
20 |
PLAYER9.FSH |
681 |
- |
700 |
Equine |
660 |
+ |
21 |
- |
40 |
- - - |
701 |
- |
720 |
Feline |
660 |
+ |
41 |
- |
60 |
- - - |
721 |
- |
740 |
Canine |
660 |
+ |
61 |
- |
80 |
- - - |
741 |
- |
760 |
Musteline |
660 |
+ |
81 |
- |
100 |
- - - |
761 |
- |
780 |
Lapine |
761 |
+ |
0 |
- |
19 |
PLAYER10.FSH |
|
Classic Wings
Start |
|
End |
Description |
Offset |
|
St.Frame |
|
En.Frame |
Filename |
121 |
- |
140 |
Rodent |
121 |
+ |
0 |
- |
19 |
PLAYER2.FSH |
141 |
- |
160 |
Equine |
121 |
+ |
20 |
- |
39 |
- - - |
161 |
- |
180 |
Feline |
121 |
+ |
40 |
- |
59 |
- - - |
181 |
- |
200 |
Canine |
121 |
+ |
60 |
- |
79 |
- - - |
201 |
- |
220 |
Musteline |
121 |
+ |
80 |
- |
99 |
- - - |
221 |
- |
240 |
Kiwi |
121 |
+ |
100 |
- |
119 |
- - - |
241 |
- |
260 |
Lapine |
241 |
+ |
0 |
- |
19 |
PLAYER6.FSH |
|
Special Forms
Start |
|
End |
Description |
Offset |
|
St.Frame |
|
En.Frame |
Filename |
781 |
- |
800 |
Gryffe |
781 |
+ |
0 |
- |
19 |
PLAYER11.FSH |
801 |
- |
820 |
Eagle |
801 |
+ |
0 |
- |
19 |
PLAYER12.FSH |
|
Special Forms
Start |
|
End |
Description |
Offset |
|
St.Frame |
|
En.Frame |
Filename |
261 |
- |
280 |
Dragon |
261 |
+ |
0 |
- |
19 |
PLAYER3.FSH |
281 |
- |
300 |
Phoenix |
281 |
+ |
0 |
- |
19 |
PLAYER4.FSH |
|
Bat Wings
Start |
|
End |
Description |
Offset |
|
St.Frame |
|
En.Frame |
Filename |
821 |
- |
840 |
Rodent |
821 |
+ |
0 |
- |
19 |
PLAYER13.FSH |
841 |
- |
860 |
Equine |
821 |
+ |
21 |
- |
39 |
- - - |
861 |
- |
880 |
Feline |
821 |
+ |
41 |
- |
59 |
- - - |
881 |
- |
900 |
Canine |
821 |
+ |
61 |
- |
79 |
- - - |
901 |
- |
920 |
Musteline |
821 |
+ |
81 |
- |
99 |
- - - |
921 |
- |
940 |
Lapine |
821 |
+ |
101 |
- |
119 |
- - - |
|
Unknown Ranges
Start |
|
End |
Description |
Offset |
|
St.Frame |
|
En.Frame |
Filename |
301 |
- |
500 |
(Unknown) |
0 |
+ |
0 |
- |
500 |
- - - |
|
Squirrel/Skunk
Start |
|
End |
Description |
Offset |
|
St.Frame |
|
En.Frame |
Filename |
941 |
- |
960 |
Normal Form |
941 |
+ |
0 |
- |
19 |
PLAYER14.FSH |
961 |
- |
980 |
Classic Wings |
941 |
+ |
20 |
- |
39 |
- - - |
981 |
- |
1000 |
Triwings |
941 |
+ |
40 |
- |
59 |
- - - |
1001 |
- |
1020 |
Butterfly Wings |
941 |
+ |
60 |
- |
79 |
- - - |
1021 |
- |
1040 |
Bat Wings |
941 |
+ |
80 |
- |
99 |
- - - |
|
Tri-coored Wings
Start |
|
End |
Description |
Offset |
|
St.Frame |
|
En.Frame |
Filename |
501 |
- |
520 |
Rodent |
500 |
+ |
1 |
- |
20 |
PLAYER7.FSH |
521 |
- |
540 |
Equine |
500 |
+ |
21 |
- |
40 |
- - - |
541 |
- |
560 |
Feline |
500 |
+ |
41 |
- |
60 |
- - - |
561 |
- |
580 |
Canine |
500 |
+ |
61 |
- |
80 |
- - - |
581 |
- |
600 |
Musteline |
500 |
+ |
81 |
- |
100 |
- - - |
601 |
- |
620 |
Lapine |
601 |
+ |
0 |
- |
19 |
PLAYER8.FSH |
|
Local Species
Start |
|
End |
Description |
Offset |
|
St.Frame |
|
En.Frame |
Filename |
6981 |
- |
7000 |
Species #0 (Bug) |
6981 |
+ |
0 |
- |
19 |
- - - |
7001 |
- |
7020 |
Species #1 |
7001 |
+ |
0 |
- |
19 |
local1.fsh |
7021 |
- |
7040 |
Species #2 |
7021 |
+ |
0 |
- |
19 |
local2.fsh |
7041 |
- |
7060 |
Species #3 |
7041 |
+ |
0 |
- |
19 |
local3.fsh |
7061 |
- |
7080 |
Species #4 |
7061 |
+ |
0 |
- |
19 |
local4.fsh |
|
Unknown Ranges
Start |
|
End |
Description |
Offset |
|
St.Frame |
|
En.Frame |
Filename |
621 |
- |
660 |
(Unknown) |
0 |
+ |
0 |
- |
660 |
- - - |
|
|
The blue entries represent new addition since the Squirrel Update!
The unknown ranges in the middle are most likely unused and are blank. I've got no idea why are they there, but
knowing the history of Furc, these tables were probably mangled well enough in the past.
Well, that's all to it. From this point, it's very simple to figure out the frame number of any character you
wish in any position you prefer. For example, if we want to display a frame number of a sitting, in a
South-Eastern direction, dragon we take the starting frame number for a dragon form (261)
and adding the offset for that specific sitting form (4). The result is 265, which is the frame
number we are looking for!
|