Free Hero Mesh

Check-in [cd748e0fe5]
Login
This is a mirror of the main repository for Free Hero Mesh. New tickets and changes will not be accepted at this mirror.
Overview
Comment:Add incomplete tutorial document file. (Hopefully can be improved in future)
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: cd748e0fe524550352ed993537178c6fb278a158
User & Date: user on 2023-08-14 03:58:54
Other Links: manifest | tags
Context
2023-08-18
05:14
Add stuff to tutorial document. (Hopefully it is better now?) check-in: 3cf9cc50a4 user: user tags: trunk
2023-08-14
03:58
Add incomplete tutorial document file. (Hopefully can be improved in future) check-in: cd748e0fe5 user: user tags: trunk
2023-08-10
02:50
Add CancelTriggers and DeferTriggers instructions. check-in: 68320feb4f user: user tags: trunk
Changes

Modified README from [a2c5706022] to [7ecd3e2b66].

159
160
161
162
163
164
165


166
167
168
169
170
171
172

* puzzleset.doc: Describes what makes up a puzzle set.

* sql.doc: This file lists and documents each of the SQL functions and SQL
tables that are available. This is not relevant to programming the rules
of the game; it is used for user customization, and for performing batch
operations when editing, and for producing reports.




=== Other files ===

Free Hero Mesh also includes the following other files, which are not the
source code files, compilation files, or documentation files:








>
>







159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174

* puzzleset.doc: Describes what makes up a puzzle set.

* sql.doc: This file lists and documents each of the SQL functions and SQL
tables that are available. This is not relevant to programming the rules
of the game; it is used for user customization, and for performing batch
operations when editing, and for producing reports.

* tutorial.doc: Tutorial documentation.


=== Other files ===

Free Hero Mesh also includes the following other files, which are not the
source code files, compilation files, or documentation files:

Modified misc/mbform.doc from [aa140ea55a] to [4504881799].

308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
[58] 0=NewX, 1=NewY

[59*] Bit constant 0-31; the second byte is the number 0-31, and at
runtime it is replaced by the relevant 32-bit number.

[60*] Sound constant (see section about user sounds)

[61] 0=ClassCount/1* (I don't know what this does), 1=GetArray

[64/3*] SendMessage (to Self)

[65/4*] SendMessage

[66/3*] Broadcast; second byte is zero-based class number








|







308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
[58] 0=NewX, 1=NewY

[59*] Bit constant 0-31; the second byte is the number 0-31, and at
runtime it is replaced by the relevant 32-bit number.

[60*] Sound constant (see section about user sounds)

[61] 0=ClassCount/1*, 1=GetArray

[64/3*] SendMessage (to Self)

[65/4*] SendMessage

[66/3*] Broadcast; second byte is zero-based class number

Added tutorial.doc version [c0c5df1123].





























































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
This document is a tutorial of the use of Free Hero Mesh.

(NOTE: This tutorial is incomplete.)


=== Installation ===

1. Compile it (if it is not already compiled). See README file for details
about compilation. I will assume it called "heromesh" and is in the PATH.

2. Copy "default.heromeshrc" into a file in the home directory called
".heromeshrc" (if in portable mode, instead put it in the same directory
as the executable file and call it "current.heromeshrc".

3. (Optional) Customize the configuration file. (This document assumes
the default key/mouse bindings, but you may customize them if desired.)
This file is a plain text file and can be edited in any text editor; see
config.doc and bindings.doc for details about the configuration file.

4. Make up puzzle set (using the instructions below).

5. You can edit and test levels, classes, etc.

6. You can publish the composite puzzle set file if desired.


=== Making the puzzle set ===

1. Decide the base name of the puzzle set, which should not include a dot,
nor should spaces be included (underscores and hyphens are OK, if it does
not start with a hyphen). The names of the four files of this puzzle set
will then be that base name followed by ".xclass", ".class", ".level",
and ".solution".

2. Make the picture file and class definition file, in either order.

  a. Write the class definition file in any text editor (e.g. vi or emacs).
  See class.doc for details of this format, or see sokoban.class for a
  simple example.

  b. Make the pictures; use "heromesh -p" and then the base name of the
  puzzle set. This brings up the picture editor.

3. Run "heromesh -n" and the base name, to create an empty level file and
empty solution file.

4. Run "heromesh -e" and the base name, to load the level editor, to make
up a level. You can then save by CTRL+S and test by CTRL+P to play this
level; if you solve it, push CTRL+S to record the solution. This only
saves the puzzles in the user cache database and not to the puzzle set
files (unless the .autoSave option is set).

5. (You can skip this step if the .autoSave option is set.) Run "heromesh
-f" and the base name, to write the changes to the puzzle set files.

6. (Optional) Once you have finished, you may wish to make a composite
puzzle set file. Use "har c" and then the names of the files that make up
the puzzle set and then ">" and the file name for the composite puzzle set,
to make up the composite puzzle set file. You can then use "heromesh -z"
and the full file name of the composite puzzle set, to load it. Note that
a composite puzzle set is read-only; to edit it, you must split them into
separate files again.


=== Picture editing ===

(TODO)


=== Class editing ===

(TODO)


=== Level editing ===

(TODO)