DreadySemicolon
Bishop of the umi order
New minigame project: Stompertack (Placeholder name)
I've learned a lot since I last picked it up, and just a few weeks ago, I decided to get it back on my desk.
Before you keep reading: this is merely a silly project of mine, which WILL come to an end, but it is unlikely to be implemented on Aspiria. There are two reasons for that:
- I'm not an licensed software engineer. I'm pretty skilled for someone who learned the language himself, but I'm no professional.
- We already have enough minigames. I think... Right?
There's a bunch of people (survivors) who need to cooperate in order to kill an overpowered dude (the "stomper"). The end.
Joining and leaving a game
The Stomp plugin features, of course, configurable arenas, and every arena has a lobby.
To join an arena you simply have to enter "/stomp join <arena_name>". Upon joining an arena, you will be teleported inside the lobby, where you'll have to wait for the game to begin IF less than 5 people have already joined (otherwise you can just step in). To mark yourself as ready, you'll either type a command or do something I haven't thought of yet.
Once you're in-game, you'll either leave after entering "/stomp leave", upon death or when you are the last one to live.
To join an arena you simply have to enter "/stomp join <arena_name>". Upon joining an arena, you will be teleported inside the lobby, where you'll have to wait for the game to begin IF less than 5 people have already joined (otherwise you can just step in). To mark yourself as ready, you'll either type a command or do something I haven't thought of yet.
Once you're in-game, you'll either leave after entering "/stomp leave", upon death or when you are the last one to live.
Equipment choice
Usually, when playing a PvP-based gamemode, you see classes, or randomized inventories, or nothing (like in HG). With Stomp, you just bring your stuff (however it is not recommended to bring your best items with you for various reasons).
Obviously you can't just overpower everyone with your SharpnessMXII axe: the stomper will be able to deal damage to player X according to the damage dealt by X's last few attacks; instead, the [missing_name]will have a default inventory, since every item has its property.
Talking about [missing_name] abilities, along with normal weapons it will have [] special items:
Snowballs:
Obviously you can't just overpower everyone with your SharpnessMXII axe: the stomper will be able to deal damage to player X according to the damage dealt by X's last few attacks; instead, the [missing_name]will have a default inventory, since every item has its property.
Talking about [missing_name] abilities, along with normal weapons it will have [] special items:
Snowballs:
They explode. Yes. They explode. More precisely, each snowball will create a 3 blocks wide explosion on hit snowballs randomly regenerate when the stomper hits a foe.
The "Eye for an eye" ("EFE" for friends, represented by a spider eye):
While holding this item, you will deal damage to player X according to the last 3 times X attacked you; this is useful (and works) against powerful melee-based enemies, but it's useless against bows or enemies that knock you back towards other less powerful ones.
Note: Damage-per-damage follows a logarithmic behavior (for those who know math :3), so you should really avoid bringing overoverpowered things.
Heavy ankles (a.k.a. "Stomping superpower"):The "Eye for an eye" ("EFE" for friends, represented by a spider eye):
While holding this item, you will deal damage to player X according to the last 3 times X attacked you; this is useful (and works) against powerful melee-based enemies, but it's useless against bows or enemies that knock you back towards other less powerful ones.
Note: Damage-per-damage follows a logarithmic behavior (for those who know math :3), so you should really avoid bringing overoverpowered things.
It's not really an item. As a stomper, when you land after a jump, if the jump was high enough to get fall damage (which is normally canceled) and you are crouching when landing, you will generate an explosion: it will be as wide and powerful (and harmful for you) as "sweet" your landing was.
Note: the damage you take when "stomping" will slightly differ from the usual Minecraft fall damage mechanics.
Suggestion from BiGGi (yet to implement): everyone hit by the explosion gets propelled away from the stomper.
Sidekick:Note: the damage you take when "stomping" will slightly differ from the usual Minecraft fall damage mechanics.
Suggestion from BiGGi (yet to implement): everyone hit by the explosion gets propelled away from the stomper.
It behaves a bit like the EFE, but instead of considering the last 3 enemy attacks it will deal damage according to the target's armor (to avoid it being overpowered against weak people). It's like a normal weapon, HOWEVER, the damage increases (max. damage: 2.5 times the default damage) when you attack the enemy from the side (not from the back!).
Server-side customization
This part will describe the more-technical stuff, things that non-administrative users won't need to care about.Setting arenas up will be tricky, but if you're a server owner you probably know how to handle this kind of things.
Shape (if you don't have any XZ space issue at all, ignore this stuff)
Entry points (EPs for short; also known as spawnpoints)
Editing
Shape (if you don't have any XZ space issue at all, ignore this stuff)
Arenas will (probably (if I actually manage to win laziness and define a class for this)) be able to have multi-rectangular shapes. What does it mean, you ask?
Normally, plugins such as Districts, Factions or what else define regions as XZ rectangles. That's the least expensive in terms of memory, but for whatever reason (lack of space?) you might need to preserve as many XZ columns as you can. Space optimization rules say you should create rectangular arenas and use all of the available space; I say otherwise. With multi-rectangular area definitions, you will be able to overlap multiple rectangles to form non-blocky arenas, if you need to make one right next to another, or if you want the arena lobby to be INSIDE the arena default rectangle.
I will provide an explainatory picture in the future. It will be mindblowingly easy to understand.
Normally, plugins such as Districts, Factions or what else define regions as XZ rectangles. That's the least expensive in terms of memory, but for whatever reason (lack of space?) you might need to preserve as many XZ columns as you can. Space optimization rules say you should create rectangular arenas and use all of the available space; I say otherwise. With multi-rectangular area definitions, you will be able to overlap multiple rectangles to form non-blocky arenas, if you need to make one right next to another, or if you want the arena lobby to be INSIDE the arena default rectangle.
I will provide an explainatory picture in the future. It will be mindblowingly easy to understand.
Entry points (EPs for short; also known as spawnpoints)
Both the arena and the lobby will have one or more EPs (the arena will have more, unless... well... why would you even have ONE entry point?). Every EP will have the usual X/Z coordinates, as well as a radius parameter. Arenas (not lobbies) will have a "Random Entry Point: <boolean>" setting, which will avoid uselessly loading every EP and... well, do what its name suggests.
Editing
People with proper permissions will, of course, be able to edit any arena, BUT they can even do it while a game is goin' on. Although they can do that, it might be wise to disable the arena first, as this feature doesn't block incoming damage.
Arena editors will not be prevented from using cheaty commands (such as /god, useful to block damage from annoying players), and they will be able to place and destroy blocks.
After editing an arena, you will need to reload it (for reasonable reasons '^') before any change is made.
Note: every arena reloads itself after a game ends, but not when it starts; if the arena is empty, you can just force-reload it.
Arena editors will not be prevented from using cheaty commands (such as /god, useful to block damage from annoying players), and they will be able to place and destroy blocks.
After editing an arena, you will need to reload it (for reasonable reasons '^') before any change is made.
Note: every arena reloads itself after a game ends, but not when it starts; if the arena is empty, you can just force-reload it.
I've probably got other things to explain, but I'll add them here as my ideas get clear.
Feel free (and forced >:C) to tell me if you'd like me to add something to the list, which is why I made a post on the forums about this upcoming thingy. To clear it up, I still have to get a complete map of the changes I need to apply to incoming/outcoming damage in order to make the game balanced.
Last edited: