[READ-ONLY] Mirror of https://github.com/thoda-dev/ffxiv-miniparse. A simple skin for the ACT overlay for Final Fantasy XIV. // Un simple skin pour l'overlay d'ACT pour Final Fantasy XIV.
0

Configure Feed

Select the types of activity you want to include in your feed.

v6.1.0 - installation instructions, new global mode with several informations by default and header for each cols

Thomas (Jan 3, 2022, 8:07 PM +0100) fe814d52 36120afa

+393 -40
+1
.gitignore
··· 1 1 .idea 2 + test.json
+77
HowToInstallEN.md
··· 1 + # How to install ACT FFXIV Mini Parse 2 + 3 + ## 1 - Install Advanced Combat Tracker (ACT) and FFXIV plugin 4 + 5 + Go to this page: https://advancedcombattracker.com/download.php and download the latest version of ACT and the FFXIV plugin. 6 + 7 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/doc_download.png) 8 + 9 + Once both files are downloaded, start the ACT installation by running `ACTv3-Setup.exe` and validating each step. 10 + 11 + You can extract the archive `FFXIV_ACT_Plugin_2.6.3.3.zip` (right click => extract all => extract). 12 + 13 + Copy the extracted folder to a safe directory that you wouldn't accidentally delete or, in the default plugin folder 14 + ACT: `C:\Users\%username%\AppData\Roaming\Advanced Combat TrackerPlugins` 15 + 16 + ## 2 - Download the OverlayPlugin 17 + 18 + Go to this page : https://github.com/RainbowMage/OverlayPlugin/releases and download the version corresponding to your operating system : 19 + 20 + - x86 for a 32 bits system 21 + - x64 for a 64 bits system 22 + 23 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/doc_download_overlay.png) 24 + 25 + You can extract the archive and copy it to the same place as the FFXIV plugin. 26 + 27 + ## 3 - Download the MiniParse 28 + 29 + Go to this page: https://github.com/Jericho1060/ffxiv-miniparse/releases and download the archive of the latest version. 30 + 31 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/doc_download_miniparse.png) 32 + 33 + As for the two previous archives, extract the content and copy it in the same folder. 34 + 35 + ## 4 - Activate plugins in ACT 36 + 37 + Start ACT and go to the `Plugins` tab and then to the `Plugin Listing` tab. 38 + 39 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/install_act_plugins.png) 40 + 41 + Then click on the `Browse` button and go to the folder where you copied all the folders. 42 + 43 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/install_act_browse_dirs.png) 44 + 45 + Open the `FFXIV_ACT_Plugin_x.x.x.x` folder (the x's here refer to the version of the plugin, the numbers may change depending on the current version when you install plugin), 46 + select the file `FFXIV_ACT_Plugin.dll` and validate by clicking on the `Open` button. 47 + 48 + Back on ACT, click on the `Add/Enable Plugin` button. 49 + 50 + Do this again with the `OverlayPlugin-0.3.3.9-x64-full` folder (the name may also change depending on the version) and select the `OverlayPlugin.dll` file, be careful, there are 51 + several dll files in this folder, make sure you select the right one. Click `Add/Enable Plugin` again to activate it. 52 + 53 + You should now see both plugins in the list below with the `Enabled` box selected. 54 + 55 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/install_act_plugins_enabled.png) 56 + 57 + ## FFXIV Plugin Settings 58 + 59 + Click on the `FFXIV ACT Plugin` tab and then select the language your game is set to. 60 + 61 + You can also change the value of the `Parse Filter` list to `Party` to display only the members of your group. Showing everyone in a 2-player raid is not always easy to read. 62 + 63 + You can also check the `Disable Combine Pets with Owner` box to display pet information (such as summonses) separately from those to whom they are linked. linked to. 64 + 65 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/install_act_plugins_ffxiv_settings.png) 66 + 67 + ## OverlayPlugin settings and miniparse skin activation 68 + 69 + Now click on the `OverlayPlugin.dll` tab and then on the `Mini Parse` sub-tab. 70 + 71 + Check that the `Show Overlay` box is checked (you can also enable the `Enable clickthru` option so that the mini parse is not clickable, your clicks will go through in this case 72 + and the overlay will not be displayed). in this case and the overlay will not interfere with your game). 73 + 74 + Then click on the `...` button at the end of the line next to the `URL` option and open the folder where you copied everything again, go to the `ffxiv-miniparse` folder and select 75 + the file `Torgan.MiniParse.html` and click the `Open` button. 76 + 77 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/install_act_plugins_overlay_settings.png)
+79
HowToInstallFR.md
··· 1 + # Comment installer ACT FFXIV Mini Parse 2 + 3 + ## 1 - Installer Advanced Combat Tracker (ACT) et le plugin FFXIV 4 + 5 + Rendez-vous sur cette page : https://advancedcombattracker.com/download.php et télécharger la dernière version de ACT et du plugin FFXIV. 6 + 7 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/doc_download.png) 8 + 9 + Une fois les deux fichiers téléchargés, lancer l'installation d'ACT en éxécutant `ACTv3-Setup.exe` et validant chaque étapes. 10 + 11 + Vous pouvez extraire l'archive `FFXIV_ACT_Plugin_2.6.3.3.zip` (clic droit => extraire tout => Extraire). 12 + 13 + Copiez le dossier extrait dans un répertoire sûr que vous ne supprimerais pas par accident ou, dans le dossier par défaut des plugins 14 + ACT : `C:\Users\%username%\AppData\Roaming\Advanced Combat Tracker\Plugins` 15 + 16 + ## 2 - Télécharger le OverlayPlugin 17 + 18 + Rendez-vous sur cette page : https://github.com/RainbowMage/OverlayPlugin/releases et télécharger la version correspondant a vôtre système d'exploitation : 19 + 20 + - x86 pour un système 32 bits 21 + - x64 pour un système 64 bits 22 + 23 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/doc_download_overlay.png) 24 + 25 + Vous pouvez extraire l'archive et la copier au même endroit que le plugin FFXIV. 26 + 27 + ## 3 - Télécharger le MiniParse 28 + 29 + Rendez-vous sur cette page : https://github.com/Jericho1060/ffxiv-miniparse/releases et téléchargez l'archive de la dernière version. 30 + 31 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/doc_download_miniparse.png) 32 + 33 + Comme pour les deux archivez précédentes, extrayez le contenu et copiez le dans le même dossier. 34 + 35 + ## 4 - Activer les plugins dans ACT 36 + 37 + Lancez ACT et rendez-vous dans l'onglet `Plugins` puis dans l'onglet `Plugin Listing`. 38 + 39 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/install_act_plugins.png) 40 + 41 + Puis cliquez sur le bouton `Browse` et allez dans le dossiez où vous avez copié tous les dossiers. 42 + 43 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/install_act_browse_dirs.png) 44 + 45 + Ouvrez le dossier `FFXIV_ACT_Plugin_x.x.x.x` (les x désignent ici la version du plugin, les nombres peuvent changer en fonction de la version actuelle au moment où vous installer 46 + le plugin), sélection le fichier `FFXIV_ACT_Plugin.dll` et validez en cliquant sur le bouton `Ouvrir`. 47 + 48 + De retour sur ACT, cliquez sur le bouton `Add/Enable Plugin`. 49 + 50 + Renouvelez l'opération avec le dossier `OverlayPlugin-0.3.3.9-x64-full` (le nom peut aussi changer en fonction de la version) et sélectionnez le fichier `OverlayPlugin.dll`, 51 + attention, il y a plusieurs fichiers DLL dans ce dossier, sélectionnez bien le bon. cliquez a nouveau sur `Add/Enable Plugin` pour l'activer. 52 + 53 + Vous devriez voir maintenant les deux plugins dans la liste en dessous avec la case `Enabled` sélectionnée. 54 + 55 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/install_act_plugins_enabled.png) 56 + 57 + ## Réglages du plugin FFXIV 58 + 59 + Cliquez sur l'onglet `FFXIV ACT Plugin` puis sélectionnez la langue dans laquelle votre jeu est configuré. 60 + 61 + Vous pouvez aussi changer la valeur de la liste `Parse Filter` en `Party` pour n'afficher que la liste des membres de votre groupe. Afficher tout le monde, dans un raid à 2 joueurs 62 + n'est pas toujours facile à lire. 63 + 64 + Vous pouvez aussi cocher la case `Disable Combine Pets with Owner` pour afficher les informations des familiers (comme les invocations) séparément de ceux ou celles à qui elles 65 + sont liées. 66 + 67 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/install_act_plugins_ffxiv_settings.png) 68 + 69 + ## Réglages de l'overlayPlugin et activation du skin miniparse 70 + 71 + Cliquez maintenant sur l'ongler `OverlayPlugin.dll` puis sur le sous onglet `Mini Parse`. 72 + 73 + Vérifiez que la case `Show Overlay` est bien cochée (vous pouvez aussi activer l'option `Enable clickthru` pour que le mini parse ne soit pas clickable, vos clics passeront au 74 + travers dans ce cas et l'overlay ne gènera pas avec votre jeu). 75 + 76 + Cliquez ensuite sur le bouton `...` en bout de ligne en face de l'option `URL` et ouvrez à nouveau le dossier où vous avez tout copié, rendez vous dans le dossier `ffxiv-miniparse` 77 + et sélectionnez le fichier `Torgan.MiniParse.html` puis validez en cliquant sur le bouton `Ouvrir`. 78 + 79 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/install_act_plugins_overlay_settings.png)
+15 -5
README.MD
··· 4 4 5 5 ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/miniparse-screen.png) 6 6 7 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/miniparse-screen-v6.1.0.png) 8 + 9 + ![Display](https://raw.githubusercontent.com/Jericho1060/ffxiv-miniparse/main/resources/screen_endwalker.png) 10 + 7 11 # Guilded Server (better than Discord) 8 12 9 - You can join me on Guilded for help or suggestions or requests by following that link : https://guilded.jericho.dev // vous pouvez me rejoindre sur Guilded pour des suggestions, de l'aide ou des demandes concernant ce projet en suivant ce lien https://guilded.jericho.dev 13 + You can join me on Guilded for help or suggestions or requests by following that link : https://guilded.jericho.dev // vous pouvez me rejoindre sur Guilded pour des suggestions, de 14 + l'aide ou des demandes concernant ce projet en suivant ce lien https://guilded.jericho.dev 10 15 11 16 ## Original Creator and credits // Créateur original et Crédits 12 17 13 - I would like to thank you the original creator but i do not know his name. From how the files are named, I would like to say it's Torgan, but i'm not sure about it. // Je voudrais remercier l'auteur original mais je ne connais malheureusement pas son nom. A la vue du nom des fichiers, je suppose que c'est Torgan, mais je ne peux pas en être certain. 18 + I would like to thank you the original creator but i do not know his name. From how the files are named, I would like to say it's Torgan, but i'm not sure about it. // Je voudrais 19 + remercier l'auteur original mais je ne connais malheureusement pas son nom. A la vue du nom des fichiers, je suppose que c'est Torgan, mais je ne peux pas en être certain. 14 20 15 - The original project was downloaded from a [youtube video by Mikoto](https://youtu.be/qw-q4hQ2WTY). // Le projet original a été téléchargé depuis une [vidéo Youtube de Mikoto](https://youtu.be/qw-q4hQ2WTY). 21 + The original project was downloaded from a youtube video by Mikoto. // Le projet original a été téléchargé depuis une vidéo Youtube de Mikoto. 16 22 17 - I only updated the project to make it work with Stormblood and Shadowbringer and Endwalker with all new job icons and colors. // Je n'ai fait que rendre le projet compatible a 100% avec Stormblood et Shadowbringer en ajoutant les icones des nouveaux jobs et les couleurs associées. 23 + I only updated the project to make it work with Stormblood, Shadowbringer and Endwalker with all new job icons and colors. // Je n'ai fait que rendre le projet compatible a 100% 24 + avec Stormblood, Shadowbringer et Endwalker en ajoutant les icones des nouveaux jobs et les couleurs associées. 18 25 19 26 ## Extension supported // Extensions supportées 20 27 ··· 22 29 23 30 ## How to Install // Comment installer 24 31 25 - Follow the instruction of Mikoto here [https://youtu.be/qw-q4hQ2WTY](https://youtu.be/qw-q4hQ2WTY). // Suivez les instructions de Mikoto ici [https://youtu.be/qw-q4hQ2WTY](https://youtu.be/qw-q4hQ2WTY). 32 + ### 1 - Install Advanced Combat Tracker 33 + 34 + - Installation Guide FR 35 + - Installation Guide EN 26 36 27 37 # Support or donation // Soutenir ou faire un don 28 38
+84 -19
Torgan.MiniParse.css
··· 3 3 font-size: 12px; 4 4 box-sizing: border-box; 5 5 } 6 + 6 7 a { 7 8 margin: 0px 2px; 8 9 text-decoration: none; ··· 11 12 height: 20px; 12 13 border-radius: 20px; 13 14 } 15 + 14 16 #wrapper:hover .viewModes { 15 17 display: block; 16 18 } 17 - #wrapper:hover .time { 18 - display: none; 19 - } 19 + 20 + /*#wrapper:hover .time {*/ 21 + /* display: none;*/ 22 + /*}*/ 23 + 20 24 .viewModes { 21 25 display: none; 22 26 list-style-type: none; ··· 26 30 top: 8px; 27 31 right: 8px; 28 32 } 33 + 29 34 li { 30 35 background-color: rgb(150, 150, 150); 31 36 display: inline-block; ··· 33 38 height: 20px; 34 39 margin: 0 2px; 35 40 } 41 + 36 42 li:hover { 37 43 border: 2px solid #ccc; 38 44 } 45 + 46 + .global { 47 + background-color: #FFFFFF; 48 + } 49 + 39 50 .damage { 40 51 background-color: #8E4A4C; 41 52 } 53 + 42 54 .healing { 43 55 background-color: #5EA041; 44 56 } 57 + 45 58 .tanking { 46 59 background-color: #465BC4; 47 60 } 61 + 48 62 html { 49 63 background-image: url(handle.png); 50 64 box-sizing: border-box; ··· 55 69 background-color: transparent; 56 70 margin: 0; 57 71 } 72 + 58 73 #wrapper { 59 74 padding: 10px; 60 75 background-color: rgba(0, 0, 0, 0.4); ··· 63 78 margin: 12px; 64 79 position: relative; 65 80 } 81 + 66 82 .dpsMeterBody * { 67 - color: #FFF7E8; 83 + color: #FFF7E8; 68 84 text-shadow: -1px 0 3px #38352F, 0 1px 3px #38352F, 1px 0 3px #38352F, 0 -1px 3px #38352F; 69 85 white-space: nowrap; 70 86 text-overflow: ellipsis; 71 87 } 88 + 72 89 .you .name { 73 - color: #FFF7E8; 90 + color: #FFF7E8; 74 91 text-shadow: -1px 0 3px #38352F, 0 1px 3px #38352F, 1px 0 3px #38352F, 0 -1px 3px #38352F; 75 92 } 93 + 76 94 .dpsMeterBody { 77 95 position: relative; 78 96 z-index: 1; 79 97 } 98 + 80 99 .dpsMeterHeader > div, 81 100 .dpsMeterBody > div { 82 101 height: 22px; 83 102 margin: 1px 0; 84 103 } 104 + 85 105 .dpsMeterBody img { 86 106 height: 20px; 87 107 width: 20px; 88 108 /* 7649 */ 89 109 } 110 + 90 111 .dpsMeterBody .row, 91 112 .dpsMeterBody .row div { 92 113 position: relative; 93 114 } 115 + 94 116 .dpsMeterBody .row div { 95 117 position: absolute; 96 118 z-index: 2; 97 119 } 120 + 98 121 .cell { 99 122 padding: 0 5px; 100 123 height: 22px; ··· 102 125 display: inline-block; 103 126 vertical-align: middle; 104 127 } 128 + 105 129 .bar-container { 106 130 position: absolute !important; 107 131 height: 100%; ··· 111 135 /*border-radius: 0 10px 10px 0;*/ 112 136 z-index: 1 !important; 113 137 } 138 + 114 139 .hide:hover { 115 140 display: none; 116 141 } 142 + 117 143 .hide { 118 144 display: none; 119 145 } 146 + 120 147 .bar { 121 148 height: 100%; 122 - /* border: 1px solid rgb(25, 25, 25); 123 - border-left: 0;*/ 149 + /* border: 1px solid rgb(25, 25, 25); 150 + border-left: 0;*/ 124 151 } 152 + 125 153 .gld div.bar, .pld div.bar { 126 154 background: linear-gradient(to top, rgba(135, 140, 155, 0.75), rgba(200, 210, 230, 0.75)); 127 155 } 156 + 128 157 .pgl div.bar, .mnk div.bar { 129 158 background: linear-gradient(to top, rgba(105, 80, 10, 0.75), rgba(185, 145, 15, 0.75)); 130 159 } 160 + 131 161 .mrd div.bar, .war div.bar { 132 162 background: linear-gradient(to top, rgba(105, 15, 15, 0.75), rgba(185, 30, 25, 0.75)); 133 163 } 164 + 134 165 .lnc div.bar, .drg div.bar { 135 166 background: linear-gradient(to top, rgba(40, 60, 125, 0.75), rgba(65, 100, 205, 0.75)); 136 167 } 168 + 137 169 .arc div.bar, .brd div.bar { 138 170 background: linear-gradient(to top, rgba(75, 85, 35, 0.75), rgba(140, 165, 65, 0.75)); 139 171 } 172 + 140 173 .rog div.bar, .nin div.bar { 141 174 background: linear-gradient(to top, rgba(95, 15, 55, 0.75), rgba(175, 25, 100, 0.75)); 142 175 } 176 + 143 177 .cnj div.bar, .whm div.bar { 144 178 background: linear-gradient(to top, rgba(180, 170, 155, 0.75), rgba(255, 240, 220, 0.75)); 145 179 } 180 + 146 181 .thm div.bar, .blm div.bar { 147 182 background: linear-gradient(to top, rgba(104, 77, 135, 0.75), rgba(165, 121, 214, 0.75)); 148 183 } 184 + 149 185 .acn div.bar, .smn div.bar { 150 186 background: linear-gradient(to top, rgba(45, 70, 5, 0.75), rgba(90, 150, 10, 0.75)); 151 187 } 188 + 152 189 .sch div.bar { 153 190 background: linear-gradient(to top, rgba(25, 20, 50, 0.75), rgba(70, 55, 125, 0.75)); 154 191 } 192 + 155 193 .drk div.bar { 156 194 background: linear-gradient(to top, rgba(160, 89, 17, 0.75), rgba(239, 134, 24, 0.75)); 157 195 } 196 + 158 197 .mch div.bar { 159 198 background: linear-gradient(to top, rgba(72, 147, 140, 0.75), rgba(110, 225, 214, 0.75)); 160 199 } 200 + 161 201 .ast div.bar { 162 202 background: linear-gradient(to top, rgba(178, 161, 53, 0.75), rgba(255, 231, 74, 0.75)); 163 203 } 204 + 164 205 .sam div.bar { 165 206 background: linear-gradient(to top, rgba(153, 52, 102, 0.75), rgba(153, 52, 102, 0.75)); 166 207 } 208 + 167 209 .rdm div.bar { 168 210 background: linear-gradient(to top, rgba(166, 0, 0, 1), rgba(166, 0, 0, 1)); 169 211 } 212 + 170 213 .blu div.bar { 171 214 background: linear-gradient(to top, rgba(10, 50, 125, 0.75), rgba(35, 90, 205, 0.75)); 172 215 } 216 + 173 217 .gnb div.bar { 174 218 background: linear-gradient(to top, rgba(10, 50, 175, 0.75), rgba(35, 90, 255, 0.75)); 175 219 } 220 + 176 221 .dnc div.bar { 177 222 background: linear-gradient(to top, rgba(105, 15, 15, 0.75), rgba(185, 30, 25, 0.75)); 178 223 } 224 + 179 225 .sge div.bar { 180 226 background: linear-gradient(to top, rgba(47, 223, 155, 0.75), rgba(47, 223, 155, 0.75)); 181 227 } 228 + 182 229 .rpr div.bar { 183 230 background: linear-gradient(to top, rgba(92, 22, 63, 0.75), rgba(92, 22, 63, 0.75)); 184 231 } 232 + 185 233 .jobless div.bar { 186 234 background: linear-gradient(to top, rgba(81, 81, 81, 0.75), rgba(160, 160, 160, 0.75)); 187 235 } 236 + 188 237 .dpsMeter { 189 238 display: none; 190 239 margin: 5px 0 0 0; 191 240 } 241 + 192 242 .encounter, 193 243 .dpsMeterHeader * { 194 244 color: #E2EBF5; ··· 197 247 font-size: 14px; 198 248 white-space: nowrap; 199 249 } 250 + 200 251 .dpsMeterHeader { 201 252 border-bottom: 1px solid #DED7BE; 202 253 } 254 + 203 255 .encounter { 204 256 padding: 0 5px; 205 257 } 258 + 206 259 .encounter > div { 207 260 display: inline-block; 208 - width: 50%; 261 + width: 33%; 209 262 } 263 + 210 264 .encounter span { 211 265 color: #FFCC66; 212 266 text-shadow: -1px 0 3px #996633, 0 1px 3px #996633, 1px 0 3px #996633, 0 -1px 3px #996633; 213 267 } 268 + 214 269 .rdps { 215 270 text-align: left; 216 271 } 272 + 273 + .rhps { 274 + text-align: left; 275 + } 276 + 217 277 .time { 218 - text-align: right; 278 + text-align: left; 219 279 } 280 + 220 281 .icon { 221 - width: 22px; 282 + width: 22px; 222 283 left: 0; 223 284 background-color: rgb(25, 25, 25); 224 285 padding: 1px; 225 286 } 287 + 226 288 .name { 227 - font-size: 12px; 228 - font-weight: bold; 289 + font-size: 12px; 290 + font-weight: bold; 229 291 left: 22px; 230 292 } 231 - .dps { 293 + 294 + .dps, .hps { 232 295 position: relative !important; 233 - text-align: right; 296 + text-align: center; 234 297 float: right; 235 298 font-weight: bold; 236 - } 237 - .dps { 238 - padding-right: 0; 299 + width: 50px; 239 300 } 301 + 240 302 .crit, 241 303 .miss, 242 304 .oheal, 243 305 .block { 244 - text-align: right; 306 + text-align: center; 245 307 height: 100%; 246 308 float: right; 247 309 } 310 + 248 311 .crit, 249 312 .block { 250 313 position: relative !important; ··· 252 315 font-size: 10px; 253 316 254 317 } 318 + 255 319 .miss, 256 320 .oheal { 257 321 position: relative !important; ··· 260 324 color: #FF0000 !important; 261 325 text-shadow: -1px 0 3px #270000, 0 1px 3px #270000, 1px 0 3px #270000, 0 -1px 3px #270000 !important; 262 326 } 327 + 263 328 .oheal { 264 329 font-size: 10px; 265 - } 330 + }
+28 -12
Torgan.MiniParse.html
··· 28 28 useHTMLEncounterDefine = true; 29 29 headerDefine = []; 30 30 var viewModes = { 31 + global: { 32 + encounter: "<div class=\"time\">Time: <span>{duration}</span></div><div class=\"rdps\">Raid DPS: <span>{ENCDPS}</span></div><div class=\"rhps\">Raid HPS: <span>{ENCHPS}</span></div>", 33 + body: [ 34 + {html: "{icon}", class: "icon"}, 35 + {text: "{name}", class: "name", header: "Name"}, 36 + {text: "{OverHealPct}", class: "crit", header: "OH%"}, 37 + {text: "{critheal%}", class: "crit", header: "Crit", width: '50'}, 38 + {text: "{ENCHPS}", class: "hps", header: "HPS"}, 39 + {text: "{DirectHitPct}", class: "crit", header: "DH"}, 40 + {text: "{crithit%}", class: "crit", header: "Crit"}, 41 + {text: "{ENCDPS}", class: "dps", header: "DPS"}, 42 + {text: "{misses}", class: "miss", header: "miss", autohide: true} 43 + ] 44 + }, 31 45 damage: { 32 46 encounter: "<div class=\"rdps\">Raid DPS: <span>{ENCDPS}</span></div><div class=\"time\">Time: <span>{duration}</span></div>", 33 47 body: [ 34 48 {html: "{icon}", class: "icon"}, 35 - {text: "{name}", class: "name"}, 36 - {text: "{crithit%}", class: "crit"}, 37 - {text: "{ENCDPS}", class: "dps"}, 38 - {text: "{misses}", class: "miss", autohide: true} 49 + {text: "{name}", class: "name", header: "Name"}, 50 + {text: "{OverHealPct}", class: "oheal", header: "OH%"}, 51 + {text: "{crithit%}", class: "crit", header: "Crit"}, 52 + {text: "{ENCDPS}", class: "dps", header: "DPS"}, 53 + {text: "{misses}", class: "miss", header: "miss", autohide: true} 39 54 ], 40 55 }, 41 56 healing: { 42 57 encounter: "<div class=\"rdps\">Raid HPS: <span>{ENCHPS}</span></div><div class=\"time\">Time: <span>{duration}</span></div>", 43 58 body: [ 44 59 {html: "{icon}", class: "icon"}, 45 - {text: "{name}", class: "name"}, 46 - {text: "{critheal%}", class: "crit"}, 47 - {text: "{ENCHPS}", class: "dps"}, 48 - {text: "{OverHealPct}", class: "oheal", autohide: true} 60 + {text: "{name}", class: "name", header: "Name"}, 61 + {text: "{critheal%}", class: "crit", header: "CritH"}, 62 + {text: "{ENCHPS}", class: "dps", header: "HPS"}, 63 + {text: "{OverHealPct}", class: "oheal", header: "OH%", autohide: true} 49 64 ] 50 65 }, 51 66 tanking: { 52 67 encounter: "<div class=\"rdps\">Raid DTPS: <span>{ENCDTPS}</span></div><div class=\"time\">Time: <span>{duration}</span></div>", 53 68 body: [ 54 69 {html: "{icon}", class: "icon"}, 55 - {text: "{name}", class: "name"}, 56 - {text: "{ParryPct}", class: "crit"}, 57 - {text: "{ENCDTPS}", class: "dps"}, 58 - {text: "{BlockPct}", class: "block", autohide: true} 70 + {text: "{name}", class: "name", header: "Name"}, 71 + {text: "{ParryPct}", class: "crit", header: "Parry%"}, 72 + {text: "{ENCDTPS}", class: "dps", header: "DPS"}, 73 + {text: "{BlockPct}", class: "block", header: "Block%", autohide: true} 59 74 ] 60 75 } 61 76 }; ··· 73 88 <div id="dpsMeterBody" class="dpsMeterBody"></div> 74 89 </div> 75 90 <ul class="viewModes"> 91 + <li onclick="setMode('global');" class="global"></li> 76 92 <li onclick="setMode('damage');" class="damage"></li> 77 93 <li onclick="setMode('healing');" class="healing"></li> 78 94 <li onclick="setMode('tanking');" class="tanking"></li>
+10 -3
Torgan.MiniParse.js
··· 8 8 headerDefine, 9 9 bodyDefine, 10 10 viewModes, 11 - vMode = "damage", 11 + vMode = "global", 12 12 data; 13 13 14 14 function setMode(mode) { ··· 41 41 // 表示要素の更新 42 42 function update(data) { 43 43 updateEncounter(data); 44 + updateCombatantList(data); 44 45 if (dpsMeterHeader.childNodes.length === 0) { 45 46 updateCombatantListHeader(); 46 47 } 47 - updateCombatantList(data); 48 48 } 49 49 50 50 // エンカウント情報を更新する ··· 138 138 newBody.appendChild(row); 139 139 row.className = 'row ' + (combatant.Job !== '' ? combatant.Job.toLowerCase() : 'jobless') + (combatantName === "YOU" ? " you" : ""); 140 140 141 + headerDefine = []; 141 142 for (var i = 0; i <= body.length; i++) { 143 + if (body[i] && body[i].header) { 144 + headerDefine.push({text: body[i].header, class: body[i].class}); 145 + } else if (body[i]) { 146 + headerDefine.push({text: "", class: body[i].class}); 147 + } 142 148 var cell = document.createElement('div'); 143 149 row.appendChild(cell); 144 150 cell.className = 'cell'; ··· 180 186 if (typeof (body[i].class) !== 'undefined') { 181 187 cell.className += ' ' + body[i].class; 182 188 } 183 - 184 189 } 185 190 186 191 if (maxCombatantsShown && ++combatantIndex === maxCombatantsShown) { ··· 195 200 196 201 // Miniparse フォーマット文字列を解析し、表示文字列を取得する 197 202 function parseActFormat(str, dictionary) { 203 + console.log(JSON.stringify(dictionary)); 198 204 var result = ""; 199 205 var currentIndex = 0; 200 206 do { ··· 213 219 var tag = str.slice(openBraceIndex + 1, closeBraceIndex); 214 220 switch (tag) { 215 221 case "ENCDTPS": 222 + case "encdtps": 216 223 var encdtps = +dictionary["damagetaken"] / +dictionary["DURATION"]; 217 224 if (isNaN(encdtps)) encdtps = 0; 218 225 else if (encdtps === Infinity) encdtps = +dictionary["damagetaken"] / +data.Encounter["DURATION"];
+1 -1
package.json
··· 1 1 { 2 2 "name": "ffxiv-miniparse", 3 - "version": "6.0.2", 3 + "version": "6.1.0", 4 4 "description": "FFXIV Mini Parse", 5 5 "repository": { 6 6 "type": "git",
resources/doc_download.png

This is a binary file and will not be displayed.

resources/doc_download_miniparse.png

This is a binary file and will not be displayed.

resources/doc_download_overlay.png

This is a binary file and will not be displayed.

resources/install_act_browse.png

This is a binary file and will not be displayed.

resources/install_act_browse_dirs.png

This is a binary file and will not be displayed.

resources/install_act_plugins.png

This is a binary file and will not be displayed.

resources/install_act_plugins_enabled.png

This is a binary file and will not be displayed.

resources/install_act_plugins_ffxiv_settings.png

This is a binary file and will not be displayed.

resources/install_act_plugins_overlay_settings.png

This is a binary file and will not be displayed.

resources/miniparse-screen-v6.1.0.png

This is a binary file and will not be displayed.

resources/screen_endwalker.png

This is a binary file and will not be displayed.

+98
test.json
··· 1 + { 2 + "n": "\n", 3 + "t": "\t", 4 + "name": "YOU", 5 + "duration": "00:08", 6 + "DURATION": "8", 7 + "damage": "22465", 8 + "damage-m": "0,02", 9 + "damage-b": "0,00", 10 + "damage-*": "22,47K", 11 + "DAMAGE-k": "22", 12 + "DAMAGE-m": "0", 13 + "DAMAGE-b": "0", 14 + "DAMAGE-*": "22K", 15 + "damage%": "100%", 16 + "dps": "2666,79", 17 + "dps-*": "2,67K", 18 + "DPS": "2667", 19 + "DPS-k": "3", 20 + "DPS-m": "0", 21 + "DPS-*": "2666", 22 + "encdps": "2895,72", 23 + "encdps-*": "2,90K", 24 + "ENCDPS": "2896", 25 + "ENCDPS-k": "3", 26 + "ENCDPS-m": "0", 27 + "ENCDPS-*": "2895", 28 + "hits": "4", 29 + "crithits": "0", 30 + "crithit%": "0%", 31 + "crittypes": "-", 32 + "misses": "0", 33 + "hitfailed": "0", 34 + "swings": "4", 35 + "tohit": "100,00", 36 + "TOHIT": "100", 37 + "maxhit": "Dosis III-5722", 38 + "MAXHIT": "5722", 39 + "maxhit-*": "Dosis III-5,72K", 40 + "MAXHIT-*": "5722", 41 + "healed": "6679", 42 + "healed%": "100%", 43 + "enchps": "860,92", 44 + "enchps-*": "860", 45 + "ENCHPS": "861", 46 + "ENCHPS-k": "1", 47 + "ENCHPS-m": "0", 48 + "ENCHPS-*": "860", 49 + "critheals": "0", 50 + "critheal%": "0%", 51 + "heals": "4", 52 + "cures": "0", 53 + "maxheal": "Kardia-1688", 54 + "MAXHEAL": "1688", 55 + "maxhealward": "Kardia-1688", 56 + "MAXHEALWARD": "1688", 57 + "maxheal-*": "Kardia-1,69K", 58 + "MAXHEAL-*": "1,69K", 59 + "maxhealward-*": "Kardia-1,69K", 60 + "MAXHEALWARD-*": "1,69K", 61 + "damagetaken": "0", 62 + "damagetaken-*": "0", 63 + "healstaken": "6679", 64 + "healstaken-*": "6,68K", 65 + "powerdrain": "0", 66 + "powerdrain-*": "0", 67 + "powerheal": "0", 68 + "powerheal-*": "0", 69 + "kills": "0", 70 + "deaths": "0", 71 + "threatstr": "+(0)0/-(0)0", 72 + "threatdelta": "0", 73 + "NAME3": "YOU", 74 + "NAME4": "YOU", 75 + "NAME5": "YOU", 76 + "NAME6": "YOU", 77 + "NAME7": "YOU", 78 + "NAME8": "YOU", 79 + "NAME9": "YOU", 80 + "NAME10": "YOU", 81 + "NAME11": "YOU", 82 + "NAME12": "YOU", 83 + "NAME13": "YOU", 84 + "NAME14": "YOU", 85 + "NAME15": "YOU", 86 + "Last10DPS": "2667", 87 + "Last30DPS": "2667", 88 + "Last60DPS": "2667", 89 + "Job": "Sge", 90 + "ParryPct": "0%", 91 + "BlockPct": "0%", 92 + "IncToHit": "---", 93 + "OverHealPct": "100%", 94 + "DirectHitPct": "0%", 95 + "DirectHitCount": "0", 96 + "CritDirectHitCount": "0", 97 + "CritDirectHitPct": "0%" 98 + }