Core Protect

Core Protect is a data logging tool that logs changes made to blocks and inventories in the world. This is the primary tool used on the CapeCraft server for combatting griefers and trolls. With it a staff member can find proof that a user caused an event or broke a rule as well as return the world to the state it had before.

We are going to start with the basics of how CoreProtect works and then go into detail on how to handle specific situations.

CoreProtect is always logging block and inventory changes across the server, whether it comes from a player or entity. Staff members of a server can access CoreProtect’s CoreInspect mode using ./co i. When in inspection mode right and left click will perform a lookup on that block position. Punching a block (left click) will lookup the block you punched, right clicking on a block will perform a lookup on the face you clicked on, essentially acting as if you had placed a block. I would recommend testing this out on a server to see what it’s like, getting comfortable with direct location lookups is the basis for the rest of the plugin.

Example of CoreInspect

This is generally what you use to narrow down information to use later. Things like usernames and time. Checking every block in a grief would be far too time consuming.

Now this is where it starts to get complicated. CoreProtect has another mode used to perform a search, lookup mode. This allows you to define parameters by which the search will be done. You can find a list of the parameters to use here. The parameters help limit the search results by area, username, or action. This is generally used for proof gathering as well as verification of damage.
To use the lookup mode you can use the command ./co lookup <parameters> or ./co l <parameters>. For the command to work you need to give it the parameters needed for your lookup, such as ./co l u:mov51 a:+block r:5 t:12h.

Image 2
Image 3

Once you have started a lookup you will see a response in chat similar to image 2. By default CoreProtect displays 4 lines of changes and then will split the remainder up into equal sized pages. To navigate to a page number run the command ./co l <page number>. The amount of lines displayed can be changed by adding a colon after the page number and then the amount of lines you want to show. (image 3)

Once you have narrowed down your search with ./co l you can roll back the damage. It’s as simple as replacing the l or lookup in your command with rb or rollback. It will rollback all of the changes it showed in lookup mode.


CoreLookup parameters

  • Action: | a:
    The action parameter is used to define what exactly you need to lookup. It can be excluded from the final command but will not show container modifications.
    • +/-/_Container
      Shows any interactions with a block container.
      Does not include enderchests.
    • +/-/_Session
      Shows the action of a users session status changing, includes location and log in/out.
    • +/-/_Block
      Shows any blocks modified in an area. Requires a radius parameter. Cascading updates such as water, bamboo, grass turning to dirt, and water/lava interaction are tracked on a case by case basis.
    • _click
      Shows the action of clicking on a clickable block. Useful for checking levers, buttons, and doors.
    • _Chat
      Shows chat logs, displayed next to the user that sent the message and time since it was sent.
    • Command
      Shows command logs, displayed next to the user that sent the command and time since it was sent.
    • _Kill
      Shows deaths/kills in a defined radius. Must have a radius parameter. Non player kills will be prefixed by a # and named after the block/entity that dealt the final blow. Use the same name with the # to perform a rollback.
    • _Username
      Used to limit a lookup to specific users or game elements. A players username will be the last name they were known by on the server, not necessarily their current one.
      Non player lookups such as lighting, lava, pistons, or endermen are performed by using a #.
  • Block: | b:
    Used to look for specific block that have been changed. You can use a , to search for multiple blocks with one command but only the first entry will autocomplete.
  • Exclude: | e:
    Used to exclude certain types of blocks from a lookup. Can only be blocks, not actions or entities. Can use , to exclude multiple blocks.
  • Radius: | r:
    Restricts a lookup to a specific radius around the player. The radius on it’s own is defined by the number of blocks you give it. A radius of 5 would look 10 blocks in each direction and the full 256 block column. You can use decimal places to get a single block lookup using .5 as your radius. The plugins default maximum radius is 100 blocks. to bypass that you have to use the global tag.
    • #worldedit
      Used to lookup within your worldedit selection. Can not bypass the lookup limit. Lookup is limited by the vertical size of the worldedit selection as well.
    • #global
      This looks everywhere on the server in all of the worlds that your CoreProtect installation has a log for.
    • #%world%
      You can define a specific world for the lookup in. This is different from the global lookup in that you can specify only the overworld or even use worlds from multiverse.
  • Time: | t:
    The amount of time to search into the past for the specified action.

    Time format is as follows:
    Weeks = w
    Days = d
    Hours = h
    Minutes = m
    Seconds = s

    There is no month option.
  • User: | u:
    Limits the search to a specific user or world entity. A players username will be the last name they were known by on the server, not necessarily their current one.
    Non player lookups (world entity) such as lighting, lava, pistons, or endermen are performed by using a #.


Stitch & Remix

Stitch and remix
Grab reality and affix
Attached with a masculine grip
Build the stars as you see fit
A world built from the seam you split

Take each step in time
A momentary peace sign
Each breath marking the rhyme
A score for the all encompassing lines
The ordered rows staying aligned

Make a feminine task
A mothers fearsome grasp
By which a world is clasped
Through which we all see our past
The touch of those long passed

Define the forbidden mark
By which all men will march
Holding back the fear so stark
The edge by which death embarks
A symbol of men amongst the stars

You build a world with many parts
Both power and fear to start
Your fear in your lack of skillful art
And having the power to give your heart
To know you freedom is torn apart

Behold, world grows beyond you
It makes its own hold for truth
Taking steps to deny it’s past youth
And rid itself of the carrion brutes
Those who are themselves new


Audio processing with mov

You know that person that always tries to finish your sentences for you, trying to prove that they have a sense of the world around them by making an assumption and rolling with it? Well everyone does that, or at least their brain does. When you hear something your brain tries to predict what it is as soon as the sound begins, the more information it receives the more defined of an idea it has. As it hears a word in the sound it switches to recognizing speech, and tries to make it easier to understand malformed sound by predicting hat word will come next. This can make it hard to understand people who have a different accent than you, or if the topic suddenly veers off course from what you were expecting. If you pay attention there is always a part of your mind running those predictions when your talking with someone, a part of you trying to make the audio processing job easier by ruling out words based on context. A sort of echo in the background of your thoughts that jumps in reaction to every new word.

Now because of that, we do have instances where our brains make mistakes. Where we expect a different sound than what was said and it’s enough to cause confusion. This is normal to happen in day to day life and our brains are really good at sorting out the context to make up for the missing word. But there are times where people can have a very hard time processing audio in general and the context isn’t enough to make up for it. For me it’s an issue with how my brain compares sound and words. I don’t always know how a word sounds, and will get very confused when I come up with a different mental sound for a word than what I hear. That leads to a cascade of misinterpreted sounds that just mix up the context and ruin any chance I had of accurately getting the word right.

There are thousands of reasons why someone might have issues with processing sound though, and it varies in intensity. For me, it generally just means I’ll ask for the word again or ask you to spell it while for others they may not be able to recognize certain sounds on demand or even understand speech. Most of us who have this diagnosis learn to deal with it when we are young, whether by therapy or necessity. So it is often a forgotten part of myself, coping with it becomes something I do in reaction to everyday life. Just another thing that gets between the communication of two people, and a reason to listen more intently than the average mind. Just like any condition it’s a spectrum of symptoms, effects, and causes. So we all have to find our own weaknesses and how we can turn them around, so that we can each learn the most from each other while making the world a better place.

Sources,
Very new to citing sources on things I talk about. These are things that explain what I’ve experienced over the years of dealing with this disorder and I don’t actually quote any of them directly. Use them as a diving in point if you feel more interested in the topic.

https://kidshealth.org/en/parents/central-auditory.html
https://en.wikipedia.org/wiki/Auditory_processing_disorder
https://en.wikipedia.org/wiki/Language_processing_in_the_brain


Traverse

Traverse the lands brink
Across every world link
Each defined and distinct
Making broad skies blink

A world by which minds are made
Through it lines can fade
Boundaries defined melt away
And lay to waste mans decay

A global force for uniting
For connecting those dividing
And to thwart those in hiding
A web of that needs defining

Make of it what you will
This miasma of man’s own skill
A putrid sensational boil
Of man’s own turmoil


Drawn out

The world shakes
As the morning wakes
To a shattered fate
A mourning mate

The aftermath of lives past
Their tortured mind all but ash
Drawn out over static facts
A bed of nails and wax

The missing middle strand
Ideas echoing so grand
The voice a master’s hand
A trinket from dreamland

Their missing mental half
A hold on realities match
Lost between here and that
Burning skin touched by facts


Motion Defined

Find me motion defined
A motion that shows its mind
Staying within lines predefined
Reactions by which life can bind

Find me a word stuck in time
That shows meaning through design
The word a beating heart against a flatline
Showing itself through a motion defined

Show me where the world lies
On the brink of two torn lines
Lines built on what motion defines
Motion derived from lidded minds

Teach me moving truth
By which our minds find youth
In tandem our lost bodies move
Our thinking towards something new

Take notice of the moving world around you. By the interactions we and the world around us has, we build the future, just as the present was built by the past. Watch, and learn. The world wants to teach. It has wonders and mysteries in every inconsequential action, areas of study not yet conceived of, and struggles by which millions may die.

– mov51

The world reeks

The world reeks of beautiful waste
Of stories told with volatile taste
A human mind seeks with haste
Each source of this rancid trace

The world reeks of a foul fume
With anger and venom in bloom
A scented flower clearing the room
The aftermath of a race to doom

My world reeks of a delightful spark
Each whisper of anger a work of art
Goosebumps raize the thought apart
A testament to a god of naught

My world dreams of senses anew
A palace where I can enjoy the view
A structure by which my eyes are true
My senses become my own to use

This is a very heavy poem to me. Through it I show many of the challenges I face interpreting the world through broken, over exaggerated senses while outlining those that still don’t recognize they are fighting with it. With it I hope that people can see that pain in of itself is no measurable thing, and is a fight we must all conquer eventually.

– mov51

The first day

The mandates have been a catch all for my dreams and aspirations for almost as long as I’ve had any sort of presence online. They were born of boredom on one of the early days of my first job, wandering around the parking lot thinking of a way to meld different stories. Essentially I was trying to figure out a way to build a world in which any character would fit. Seems like a simple idea, but the answer I came up with has a lot of ramifications.

If anyone can have any power with any or no limits, then the system should have no limits, and with no limits you have no story. I think we can agree on that much. I spent weeks dragging that idea through the mud from every angle I could think of, and at the end of it all, I found that there is a limit. The key, at least is this iteration, is the beings that live without limits. Beings who can lie so well they fool themselves, who’s superstitions limit their way of life, who spend their lives in a race for power of mind and body. Humans without limits would not be the omnipotent gods of our dreams, but broken things with the same issues we have, just a magnitude or two greater in consequence.

This would not strictly be a story of displaying incredible powers that frame situations, but rather a story of how the human condition is affected by obtaining whatever it wills. The consequences of having your desires granted just as easily and quickly as they come, with no more effort than it takes to think them. The everyday situations that come out of a community with these powers would be very similar to what we find in real life, the struggles they have are affected by similar metrics. While they may not want material things, goals in life are not often solely material, but rather they come from the comfort or stability that things bring to life. In a world where your whims are acted out on the world, what is ever stable?


As I said, this world has been a catch all for my dreams since that day. It’s easy to build a character in a world when the only thing you have to worry about is their beliefs about their powers, and it’s enticing to imagine a world in which so many different power sets can interact. But it’s time I start using it as a catch all and really get down to business putting the world together. With this post I am going to start working out each of the sections of the story myself. No more waiting on others to bounce ideas off of, no more waiting for time or motivation. I refuse to let this dream die, it means too much to me.

I will be releasing a second calendar page over the next week outlining milestones for the project. Essentially pinning me down to a time. I’m going to start slow, but it will be done. First things first, the premise. I will release that within a month of this post and link it back to here, stay tuned.


Contact me

The best way to get ahold of me quickly is through my discord server which should be linked on the right side of this webpage. But if you need to contact me in a more formal manner you can use my email at mov51@mov51.net