Forum: HF Discussion
by Apocalyman at 06-07-2020, 09:54 PM
1 comments
Hello! first of all I would like to say thank you for doing what you did until now with the server+making the game into an exe and everything else related. I wanted to know if its possible to somehow continue updating this game? this game was my childhood and I even remember when chapters 6 and 7 came out and I was so excited to play them. its sad that this game is dead now. isnt it possible to do something? thank you! (sorry if this has been asked before I tried using the contact form but it says unauthorized or something like that)
by MangaD at 05-07-2020, 12:24 PM
0 comments
Introduction
It is possible to "convert" the SWF to an EXE using HF Workshop, which is actually just using Adobe Flash Player Projector to create a standalone of the SWF. There are many versions of the FP available for download, and you may download them here here.
Note: If you are curious about the algorithm HF Workshop is using, you may check it here.
However, HF Workshop does not customize the FP projector. So here are some instructions on how you can achieve this.
Note: The EXE must not be compressed with UPX for this to work.
Changing the icon
For changing the icon, you'll need Resource Editor. Open the Flash Player projector file (SA.exe), before adding HF swf to it, with resource editor. Expand the "Icon" folder, right click on the first icon, click on "Load resource..." and select the ICO file you want. If you don't have a ICO file but only an image, you can convert the image to ICO using any online tool, like https://icoconvert.com/. The official HF ICO is available here. You may do this for all the icons there, though one should be enough to change the displayed icon of the EXE file. You may then use this modified SA.exe to convert HF swf to exe.
Notes:
- The EXE must not be compressed with UPX for this to work.
- This must be done before combining HF swf with SA.exe.
Removing the menu bar
The menu bar is not very useful. Of all of its options, full screen is probably the only useful one, but this can be achieved with CTRL+F too. Removing this bar is actually easy. With Resource Editor again, open the EXE with it, expand the "Menu" folder and delete all the menu entries.
Changing the window's title
This one varies with the FP version. On old versions, I was told that using Resource Editor, changing the title can be done on the "String Table" folder. But on more recent versions (the oldest I tried was version 11), changing the title must be done with an hex editor. In version 11 and version 20 (the ones I tried), you have to search for
Note: Resource Hacker appears to break Trong's Flash Player. Resource Editor is a good alternative that works.
It is possible to "convert" the SWF to an EXE using HF Workshop, which is actually just using Adobe Flash Player Projector to create a standalone of the SWF. There are many versions of the FP available for download, and you may download them here here.
Note: If you are curious about the algorithm HF Workshop is using, you may check it here.
However, HF Workshop does not customize the FP projector. So here are some instructions on how you can achieve this.
Note: The EXE must not be compressed with UPX for this to work.
Changing the icon
For changing the icon, you'll need Resource Editor. Open the Flash Player projector file (SA.exe), before adding HF swf to it, with resource editor. Expand the "Icon" folder, right click on the first icon, click on "Load resource..." and select the ICO file you want. If you don't have a ICO file but only an image, you can convert the image to ICO using any online tool, like https://icoconvert.com/. The official HF ICO is available here. You may do this for all the icons there, though one should be enough to change the displayed icon of the EXE file. You may then use this modified SA.exe to convert HF swf to exe.
Notes:
- The EXE must not be compressed with UPX for this to work.
- This must be done before combining HF swf with SA.exe.
Removing the menu bar
The menu bar is not very useful. Of all of its options, full screen is probably the only useful one, but this can be achieved with CTRL+F too. Removing this bar is actually easy. With Resource Editor again, open the EXE with it, expand the "Menu" folder and delete all the menu entries.
Changing the window's title
This one varies with the FP version. On old versions, I was told that using Resource Editor, changing the title can be done on the "String Table" folder. But on more recent versions (the oldest I tried was version 11), changing the title must be done with an hex editor. In version 11 and version 20 (the ones I tried), you have to search for
A\0d\0o\0b\0e\0 \0F\0l\0a\0s\0h\0 \0P\0l\0a\0y\0e\0r\0 \0X\0X
, where the \0
represents the null byte (00 in hexadecimal) and appears between every character, and XX represents the version (11, 20...). After you've found this, you can write your own title on top of this (keeping the null bytes intact), and you must terminate the title with a null byte, and you also cannot have a title bigger than the already existing one, using this simple method. So, your title could look like: H\0e\0r\0o\0 \0F\0i\0g\0h\0t\0e\0r\0 \0v\00\0.\07\0+\0\0\0X\0X
Note: Resource Hacker appears to break Trong's Flash Player. Resource Editor is a good alternative that works.
by asdfqwe at 03-07-2020, 08:53 PM
5 comments
by MangaD at 21-06-2020, 03:43 PM
0 comments
After talking with @不饿白帝BEBD, @Runningcake and @Lee Catalpa Tien (on QQ), I have grasped a few concepts of the SPT file. I'll leave a rough draft here, for future updates and development. Feel free to comment with your knowledge and improve it!
Overview of SPT file:
Making new moves requires modifying
In the attachment there is a much more complete tutorial file made by @Lee Catalpa Tien. Thanks to @nikhil for translating it to English!
Overview of SPT file:
cad
andkeyTgr
arrays appear to be useless. Maybe leftovers from older versions.
frames
array contains all the frames' data.allowKeyTrigger
attribute of a frame specifies whether or not we can perform an action (e.g. attack) from this frame.
attack
array contains all the attacks that the character can perform while in this frame.refName
is the name reference for an attack. The attacks are in the fileData.Global_globalDat
.
action
array contains all the possible actions of a character.a_keyTgr
specifies the actions that can be TriGgeRed in the action state that it belongs to, as well as how to trigger themrkt
(restrict key trigger) if it is false,allowKeyTrigger
in frame is ignored. If it is true, it can be triggered only in frames of the action that haveallowKeyTrigger
set totrue
. Example: In STAND state,rkt
should befalse
for a special move if we want to trigger it at any time. But during an attack or specific action,rkt
should betrue
so that only in certain frames (e.g. later frames) of the attack we can trigger another one.
k
key combination to perform move to right.
kr
key combination to perform move to left (stands for key reverse).
agi
is the Action Group Index that this trigger corresponds to.
ati
- in an action group there is anactionIndex
array,ati
is the index in this array.
ai
- each element of theactionIndex
array is also an array, andai
is the index of the element in this array that we want.
frameIndex
refers to the frame where this action starts
actionGroup
- corresponds to a set of actions. Most common arenormal
,gua
(guard),cat
(catch human),hea
(catch object),rid
(ride)action
useless array, probably leftover from older versions. It was moved to the outsideaction
array mentioned above. NowactionGroup
is linked to a set of actions through the attributesati
,agi
andai
insidea_keyTgr
inside of an action.
Making new moves requires modifying
actionGroup
, action
and frame
arrays.hire_id
- array with type of soldiers for each possible unit (we have to use their id to get them, e.g.: "z_infantry01"). If you use a mount as id (e.g.horse
,horse_monster
,horse_triceratops
), they will be available to mount but won't attack on their own.
hire_max
- array with count of soldiers for each possible unit (for ex. lets say "z_infantry01" if we put its value to 1, then we get 4 soldiers, if 2 means then 8 soldiers)
hire_price
- array with costs to hire a unit, for each possible unit.
hire_h
- array with mounts for each possible unit. If "null" they are on foot. If "h" they are on horse. If "m" they are on monster. If "t" they are on triceratops. These mounts won't disappear when a soldier falls from them, they will be available to mount by the player or another soldier, except if thehire_id
isz_cavalry01
, then the mounts will disappear.
In the attachment there is a much more complete tutorial file made by @Lee Catalpa Tien. Thanks to @
Welcome, Guest
You have to register before you can post on our site.
|
Search Forums
Forum Statistics
Members: 442 Latest member: alfinaszfp Forum threads: 347 Forum posts: 1,563 |
Online Users
There are currently 302 online users. 0 Member(s) | 301 Guest(s) Bing |
Upcoming Events
No upcoming events |
Latest Threads
What song are you listeni...
Last
by MangaD 42 Replies |
HFE Random Version
Last
by Almighty Jack E 0 Replies |
HF Lunar Gravity Edition
Last
by Almighty Jack E 0 Replies |
HF Equilibrium
Last
by Almighty Jack E 1 Replies |
HFE Editor | Bug List
Last
by MangaD 5 Replies |
XJDL
Last
by Almighty Jack E 0 Replies |
HF Tower Climbing Challen...
Last
by Almighty Jack E 0 Replies |
Soldier War
Last
by Almighty Jack E 0 Replies |
HF EYJA
Last
by Almighty Jack E 0 Replies |
Hero Fighter with Soldier...
Last
by Almighty Jack E 0 Replies |