- Updated to MW 2.0.15. See this post for more information
- [Fix] Added proper catch for IO errors on map loading as to prevent it from spaming the log.
- [Bug] Fixed dependency on ChickenCore
- [Bug] Only the sender of the command will receive the result msg.
- [Bug] Fixed logic in chunk selection for the entity overlay.
- [Opti] Real profiler is now loaded only when Opis is running. Outside of a run, the profiler acts as an empty method call.
- [Cmd] /opis_reset will clear all the accumulated data and clear the red overlay on the selected TE.
- [Cmd] /opis_killall <entname> will kill all the entities of the given name in the game (as provided by /opis_nent).
- [Cmd] /opis_help will show a list of commands and descriptions.
- Updated MapWriter to the latest version as of today.
- Overlay "ent per chunk" : This doesn't require you to run the profiler first. It will show you a list of all the chunks with entities and how many entity per chunk. You can middle click to map to select a chunk and get a list of the entities in this chunk. Clicking on the list will also select a chunk and pop up the list of entities. Clicking on an entity will directly teleport you to it.
- Command /opis_nent : This will show you a list of all the entities on the server, sorted by type.
- Command /opis_ent : This needs to be run after the profile itself (opis_start). It will return a timing of the 20 slowest entities on the server along with their ID and number of data points (check the video for more information). Clicking on an entity will teleport you directly to it.
- Command /opis_kill <dim> <eid> : From the previous command, you can get a eid. Using this command, you can just kill a specific entity without actually having to move to it.
You will have to download both MobiusCore 1.0.0 and Opis 1.0.0_Alpha. Those are available in the download section.Copy both in your mods directory as usual, on the client and the server. You are not required to distribute the client side to your users, unless you want them to have access to the loaded chunk map.
If you are using MapWriter already, REMOVE IT. I'm providing my own modified version along with Opis. If you have both installed at the same time, you will get an error when you start the game. Don't complain, you have been warned.
Most of the fonctionnalities are only accessible if you are an admin, so be sure to OP yourself.
- /opis_start : Will start the profiler itself and collect data. This will impact your server performances a bit. Don't let it run all the time on a live server.
- /opis_stop : Will stop data collection.
- /opis_delay : Will define the delay between 2 data collections in ticks. If you are running on a live server with players, putting an higher value will reduce load from the profiler. For example, putting a value of 10 will collect data twice per second, while a value of 40, once every 2 seconds.
- /opis_te : This will open a list of the 20 slowest TileEntities sorted by time. Clicking on a row will open the map, load the mean time overlay and select the corresponding chunk.
- /opis_chunk : This will open a list of the 20 slowest chunks, sorted by time. Clicking will open and center the map on the chunk.
When the map is open (default M), you can choose the overlay by using the mousewheel on the overlay label, center top of the screen.
The loaded chunks overlay will display player loaded chunks in green and force loaded chunks in blue. The side panel will display the current tickets on the server.Middle mouse click anywhere on the map will reveal this area.Clicking on a ticket will center the map over the central chunk of the ticket.Clicking again will teleport the player to this location.
The mean time overlay will display the chunks with TEs and update time. Colors range from blue to red, with blue being ok, red being bad.If you middle mouse click any colored chunk, it will open a side panel with the list of TEs. As for the chunks, clicking the list once will center the map, and twice, teleport you.
Once you teleported, the block you selected should be highlighted in red for easy spotting.
- A ticket can cover many chunk loaders. Centering and teleportation might result in strange behavior.
- My tableview widget do not like resizing. If you change the window size with a tableview open, close it and reopen it.
- Mr_Okushama for the TTF code. Tables would look ugly without it.
- Player for the highlight code. The mod would be less useful without it.
- MapWriter, without which I would have never been able to make such a mod.
You can help out
This mod took me really a lot of time to put together. Overall, I think I'm now timing more than a month of work to get it to its current state (previous proof of concept included). If it brings anything of value to you, helps you in any way or makes your playing experience better, that's already a reward by itself. If you feel like it, you can also help the developement of this mod and others by making a small donation using the button below. This will go a long way in making my work more rewarding. It will also make you happier (it has been proven).
Opis (and all my mods) is distributed under the Apache 2.0 license. It has been for a while. This license means that you can do whatever you want with it (more or less). Also, FTB got a blanket license to include Opis and all my mods in their packs.
Stop asking me if you can include it, YES YOU CAN. That's what the permissive license is for.
Just do the usual link back to this thread or my blog and everything is cool.
You can get everything there.