You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+8-6Lines changed: 8 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
# **MgxParser**
2
-
*This version(0.5.0) was compiled on 20240220*
2
+
*This version(0.5.2) was compiled on 20240305*
3
3
4
4
## Introduction
5
5
MgxParser is a C++ lib used to parse Age of Empires II game records.
@@ -74,6 +74,9 @@ Those keys are ensured to be in the output:
74
74
- **realext**: File extension of the extracted file in .zip archive. e.g. .mgx, .aoe2record, etc.
75
75
- **gameTime**: Time when this game played. Later DE versions have this recorded. Older versions use last modified time of the record file. If the input stream is not a file, will be current time.
76
76
- **message**: A string contains some hints about the parsing process.
77
+
- **matchup**: Matchup of this game. e.g. "1v1", "4v4", "1v2v3", etc. "N/A"if not available.
78
+
- **version.code**: A string indicates the version of the record. e.g. "AOC10C", "DE", etc. "UNSUPPORTED"if not available.
79
+
- **rawEncoding**: The encoding of the record file. e.g. "UTF-8", "ISO-8859-1", etc. "UNKNOWN"if not detected.
77
80
78
81
### About 'status'
79
82
The 'status' value can be checked to determine whether the parsing was successful:
@@ -121,7 +124,6 @@ get notified.
121
124
These libraries are required to build MgxParser:
122
125
- **CImg(bundled)**: Used to generate mini maps. This library is bundled into `libs/CImg`
123
126
and compiled with MgxParser.
124
-
- **movfuscator**: md5 functionin this project was used to generate retroGuid
125
127
of record. [Project page](https://github.com/xoreaxeaxeax/movfuscator/blob/ea37dae93fbcd93f642c71a53878da588bd7ddb4/validation/crypto-algorithms/md5_test.c)
126
128
- **libpng**: Required by CImg.
127
129
```sh
@@ -143,15 +145,14 @@ These libraries are required to build MgxParser:
143
145
All dependencies of MgxParser are bundled into the executive file after compilation.
144
146
145
147
## How to compile
148
+
A complie option `BUILD_STATIC` is provided to control whether to build a static library.
149
+
Because some denpendencies don't provide a static version on alpine.
150
+
146
151
To compile this project, latest version of CMake is recommended. See
147
152
https://apt.kitware.com/ for details on this. I use CMake `3.24.1` and never
148
153
tested other versions. On Ubuntu18 and newer versions, fresh version of cmake
149
154
can be installed by:
150
155
```sh
151
-
sudo snap install cmake --classic
152
-
```
153
-
or
154
-
```sh
155
156
sudo apt-get install cmake
156
157
```
157
158
@@ -181,6 +182,7 @@ The compiled node addon will be in `build/Release` directory.
181
182
A demo of node addon is in `test/node_addon_test.js` directory.
182
183
183
184
## Version log
185
+
- **0.5.2**: Modifications compiling on alpine. Add a static library option. Updated spdlog.
184
186
- **0.5.0**: Refactored json output, make some keys mandatory. **Some key names changed!**
185
187
- **0.4.6**: Replace md5 with openssl MD5 algorithm. Add ability to generate base64 encoded map data.
0 commit comments