Hardcore gamemode #177
Labels
No Label
#P1 CRITICAL
#P2: HIGH
#P3: elevated
#P4 priority: medium
#P6: low
#Review
annoying
API
bug
code quality
combat
commands
compatibility
configurability
contribution inside
controls
core feature
creative mode
delayed for engine release
documentation
duplicate
enhancement
environment
gameplay
graphics
ground content conflict
GUI/HUD
help wanted
incomplete feature
invalid / won't fix
items
looking for contributor
mapgen
meta
mineclone2+
Minecraft >= 1.13
Minecraft >= 1.17
missing feature
mobile
mobs
mod support
model needed
multiplayer
Needs adoption
needs discussion
needs engine change
needs more information
needs research
nodes
non-Minecraft feature
non-mob entities
performance
player
possible close
redstone
release notes
schematics
Skyblock
sounds
Testing / Retest
tools
translation
unconfirmed
mcl5
mcla
Media missing
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: VoxeLibre/VoxeLibre#177
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Author: @WSDguy2014 Posted at: 08.04.2017 11:42
Previously, there is no hardcore mode in this subgame to do a challenge.
How to do that:
There is no way to create new world with hardcore mode enabled. Create new world, enable only damage, disable creative mode, join new world for first time, will get a first message box if you want to enable hardcore mode:![screenshot_20170408_134221](https://cloud.githubusercontent.com/assets/13905392/24828349/8f4f1044-1c63-11e7-8fdb-1ee495199343.png)
It does not appear this message box for only first time, not second time nor third time, if you are: disabled damage & enabled creative mode, enable damage & enable creative mode, disabled damage & disabled creative mode. Only can enable damage, to make appear this message box for only first time.
If you choose "No", will play normally. Same thing by pressing Esc button to play normally.
If you choose "Yes", will appear another second message box to confirm: "Are you sure?" with 2 buttons "Yes" and "No".
If you choose "No", will go back to previous message box. Same thing by pressing Esc button.
If you choose "Yes", will enable hardcore mode.
Note: 1st and 2nd message box must be paused the game in singleplayer.
If you trying to switch in hardcore mode enable for example: disabled damage & enabled creative mode, enable damage & enable creative mode, disabled damage & disabled creative mode, and then re join world that has hardcore mode enabled, will get an error message: "This world has hardcore mode enabled. Please, enable damage and disable creative mode only, to play this world". I don't know if its possible to enable/disable creative mode and enable/disable damage in-game.
Don't grant yourself in singleplayer or other players something like that to fly, fast, noclip or all privileges, it will get error message: "Stop cheating in this world with hardcore mode enabled!", automatically revokes it and kicked out to main menu.
If you die in singleplayer, it's game over, you can respawn as spectator mode per player to get automatically grant fly, noclip and fast privileges and revokes interact and shout (optional, i don't know) privileges, to look around the world as long as you can. If you go back to main menu, it will automatically deletes world that has hardcore mode enabled (I don't know, i didn't test it in Minecraft).
If you die in multiplayer server, same thing as singleplayer mode, but if you disconnect the server or getting time out if you are on spectator mode, you will get banned per account or IP ban (i don't know what i choose ban type) forever. Only admin can die multiple times without playing on spectator mode/getting banned himself/herself. Maybe only admin can grant to other players new privilege "multideath" (multideath allow player die multiple times without playing on spectator mode/getting banned himself/herself if it has a privilege).
In multiplayer server should add server file code
hardcore_mode
forfalse
by default.doing
hardcore_mode:false
will activate normally.doing
hardcore_mode:true
will activate hardcore mode.P.S. - I forgot about changing health bar texture look to make different, while playing on hardcore mode.
Author: @Wuzzy2 Posted at: 23.05.2017 01:58
The most important aspect of Hardcore Mode is that you can not respawn, once you're dead. You only got one life. It is also correct that MC wants to delete the world afterwards.
These are the main reasons why this feature is not going to be added anytime soon. This requires some serious work on the engine first before I can get anywhere. Obviously implementing the Hardcore Mode is a must, but it would be way to hacky if I would implement it in a way like you suggest.
I don't like how you described the dialog boxes, it's a bit messy in my opinion. Especially since these dialog boxes pop up after you technically already started the game by creating the world.
I think it is better if the engine / main menu has support for more pre-world creation options, defined by subgame. This would be a much cleaner solution in the long run.
Note that the normal difficulty settings don't require special engine support and I am much more optimistic for those. But this is currently way down on my endless TODO list. xD First I want to get the basic gameplay right, and MCL2 is still far from that.
In mc, even in hardcore mode, you are able to continue playing the world after death. (just type /gamemode hardcore after spectating the world)
I don't support a message box.
This will mess the /gamemod command.
In an ideal world, mt would allow games to define initials possible gamemodes to show in the game menu.
Hey, so I've been toying around with implementing a basic implementation of hardcore_mode.
I think it's in an okay state to finally demo, at least: https://git.minetest.land/MineClone2/MineClone2/src/branch/hardcore_mode_test
It's based off of Sofar's YOLO mod: https://github.com/minetest-mods/yolo
And, then I reworked it a bit to add a basic spectator mode after death; instead of kicking the player like the original mod.
Since, MC no longer deletes worlds automatically, but gives you a choice to spectate or return to the menu.
I haven't done any change to damage values to make the game harder, yet. As I said above; right now it's mostly just a demo to see what's possible. Even, if it is kinda hacky.
Hardcore mode wiki source: https://minecraft.fandom.com/wiki/Hardcore
Spectator mode wiki source: https://minecraft.fandom.com/wiki/Spectator
As for trying it out.
Definitely do so on a separate, and new test world to be safe.
But, it's enabled or disabled via game settings; since hardcore mode is supposed to be a world setting, instead of per player.
However, the spectator aspect of this is added as a game mode; so it can be used even without hardcore_mode enabled.
Anyway, I've been craving a hardcore_mode recently, and wanted to see what it might take to implement. Hence, the test branch.
So, maybe this can get the discussion going again. or inspire a better take on this.
Nice. We might wanna add something that saves the "died" state for the world and forces all other playernames that might join into spectator too that way there's at least no in game way to play the world again (at least none i can see).
Thanks, ooh yea that's a good idea.
I know there's a few ways to save the world. At least via singleplayer; by opening to lan & enabling cheats or through 3rd party tools to edit the map.
So, not sure how strict we want to be. But, yea, something to think about further.
well short of deleting the map.sqlite there will always be ways to get the world back.
My thinking was to at least make it necessary to manually edit something in the world directory (ultimately we can't prevent that anyways).
The way it is now you can /gamemode survival and you're back too ^^ - ofc you'd have to /grantme server first but due to the nature of singleplayer you can of course do that.
Ah okay.
I was a little confused about your first part; about forcing all playernames who might join a 'dead' world; to be spectator.
That seems a bit confusing/hard to implement with regards to multiplayer.
Would we hypothetically have a set player limit on server start?
And, assume any other players joining after are trying to bypass spectator mode or something else?
For now though, I'll look into a world_flag to make it harder to disable the hardcore_mode.
Flags in sqlite databases or text files are easily removed/turned off. :) It's not worth wasting time on that.
With that reasoning the whole hardcore mode is not worth wasting time on. As is it's trivially circumvented by ingame means (you don't even have to restart the game).
I mean if you're that honest with yourself you can just stop playing when you died.
It's quite a step more to manually edit stuff in your world directory vs. picking a different playername or running /gamemode.
I added context.
Ok. point still stands.
I think we should make it ideally impossible to revert this from within the game.
The point of hardcore mode is that if you die you stay dead. Now if you're 100% honest with yourself as a player you do not need this as a technical solution - you can just quit if you die.
If we provide a technical solution I think it should make sure it isn't trivial to circumvent it (particularly with methods we provide out of the box).
Obviously with enough "criminal energy" you could always circumvent it as we can never prevent editing files in the world directory but doing so people would know they are trying to "cheat".
If we don't do anything to prevent this let's at least be honest and offer a "/cheatyrespawn" command when you died in hardcore mode that lets you respawn anyways.
But if we go that route why a forced spectator mode at all? Why not just display a message "you died in hardcore mode, please do not keep playing in this world".
We talked about the same thing. Why even argue?
I say we should at least prevent what we can (easily) prevent. Which specifically means putting some kind of flag in the world data that marks the world as "player died in hardcore" and then the game will not allow you to play in said world again - unless you manually edit files in the world directory.
You say we shouldn't do that because manually editing would make that possible anyways
To which i said why have hardcore mode at all if it's essentially a "please respect this" situation a chat message would suffice.
You're right, and I didn't properly read his last statement. I thought he was looking into something complicated to store in the DB, but now I see he literally meant a flag, which is fine.
Okay, yea.
Added a flag via a text file in the world folder; to hardcore worlds on creation.
That way they'll remember their hardcore mode status even if you disable 'hardcore mode' in the menu.
Though, only on new worlds; on first startup.
I don't want to override someone's old world if they accidentally left the menu setting on.
To disable HC worlds with the flag:
This will require disabling the menu setting.
Removing the "hardcore_mode.txt" file from the world folder.
And, lastly the user will need the privs to remove themselves from 'spectator mode'; if they had died.