I'm trying to create a horror mod, could someone help me?

Started by SaaturN3 on

Topic category: Help with modding (Java Edition)

Last seen on 18:26, 8. Sep 2024
Joined Aug 2024
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
I'm trying to create a horror mod, could someone help me?

Hello everyone, I'm trying to create a horror mod. This is my first time making a mod. I've already made the creature's model and texture, and I've also tested the mob in Minecraft to see if it's working properly. The problem is that I don't understand anything about AI entities. I already have in mind what kind of behavior I want to create for the creature. I'll explain it below.

The first behavior would be for the creature to observe the player from afar, and when the player looks directly at the entity, it will disappear, causing a blinding effect for a few seconds. If the player doesn't notice its presence, the entity will remain observing for at least 4 minutes and then disappear. I'd like it to stay a long time without appearing again on both occasions, so that the gameplay doesn't become so repetitive and annoying.
. The second behavior I would like to do is for the entity to appear behind the player at least 4 blocks away and chase him without making any noise. If the player looks back and sees it, the entity will disappear immediately without any potion effect. If the player does not look back, the creature will chase him for at least 2 minutes, after which it will disappear and will not appear for a long time. I want this behavior to have a slightly lower chance of happening.
The third behavior would be for the entity to appear and disappear in seconds in front of the player at random times and causing damage. The probability of this happening would be much lower.
And finally, the fourth behavior would be for the creature to appear at a considerable distance from the player and chase him to attack. When the entity reaches the player, it will cause damage, almost killing him with a jumpscare without sound on the screen. After this damage, it will disappear, causing a blinding effect for a few seconds. I would like all of these behaviors to not happen so often so that the mod does not get boring so quickly.

Is it possible to do all of this that I have in mind in Mcreator?
If possible, I would like someone to help me with this… Thank you in advance.

Last seen on 11:56, 11. Sep 2024
Joined Jun 2024
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Hi. Alright, so I assume you…
Sun, 08/25/2024 - 02:18

Hi.

Alright, so I assume you are not very experienced with MCCreator yet? No worries, I'll go through some small and basic understandable details that will help with this horror mod you are trying to help. Let's cut to the chase;

Dang, a horror mod is quite an ambitious project for a first-time modder. So from my perspective, I believe you are trying to go for the Herobrine and Cave-Dweller mod sort of approach, which is fine. I can teach you how to add most of your requests step-by-step. But first, I'll explain what you are capable or not capable of doing on vanilla-based* modding software on MCCreator without plugins (for now).

 

BASICS OF INDEPENDENT & DEPENDENT VARIABLES AND CAPABILITIES

So, there are many ways to add things to a mod. MCCreator goes for more of a vanilla-functions approach. And if you don't know what that is, ill give an example. So, you wanted your horror creature to disappear when the player looks at them. To do this, you will need a variety of different functions in an element called a "procedure", that will do things when the player or world does something. This is called an independent variable.

Basically, the formula goes like this. If [Independent Var.] happens the [Dependent Var.] will happen. And there are lots of independent variables to choose from that already exist in normal Minecraft software. And for the game to detect when you look at a creature, we can take the functions/variables from an enderman. Because the game already has a way to detect when you are looking at a mob/player or not. Get where I'm going?

If you want other functions such as the game doing something that usually isn't in Minecraft, for example, a mob building an entire structure or a mob performing an advanced animation, you will need things called plugins.

 

PLUGINS & ADD-ONS

So plugins basically give you extra functions and things to work with. But often come with a small price to pay: your mod will have another mod as a dependency. A perfect example of this is GeckoLib. GeckoLib you may know as a mod that usually goes with other mods. This is because those mods used GeckoLib as one of their plugins, and I think that it is very worth it to have plugins like these, especially in a horror mod.

GeckoLib allows you to create and animate your own animations on external software (like Blockbench) and import those files into your custom mob for them to do those animations when you choose. Now it's obviously not that simple, but it just makes creating and importing animations possible.

 

BASIC FUNCTIONS TO HELP YOU WITH YOUR MOD

Enough teaching, let's talk about how you will do this and achieve this horror mod you are making. I will go through your requests and try to create a way to achieve this in MCCreator.

 

1: Making the Mob Disappear and Inflict an Effect when Looked At

Starting off huge, we have a Herobrine sort of action. Now making the mob disappear would be a little bit harder than inflicting the effect. But there can be two ways to make it do this. The first way, being every time a player looks of the entity, it makes the entity invisible. Now this can be done with a simple procedure that goes;

When [Player] stares at [Entity] for [Time] ticks, Inflict Effect on [Entity] for [Time] ticks [Amplifier].

Which would work quite well. And to make the effect for the player (which in this case is blindness) we can add a sub-function or a second procedure that goes something like this;

When [Player] stares at [Entity] for [Time] ticks, Inflict Effect on [@p] for [Time] ticks [Amplifier]

Now sorry I can't send a screenshot right now, but you can get the [stares at entity] block at the very start. It's a green block, and has a drop-down menu to select an independent variable to execute the procedure. One of the drop-down menu options should be [stares at entity] or something along that line. To get the [time], you can go to the math section and world data or management section on the sidebar

 

2: Making the Mob Chase the Player and Deal Damage

Now I'm not the best at creating MobAI, but I will try my best. The first thing you'd have to do is create this mob. Whatever the creature is, you can model it in blockbench, uplod the model and install GeckoLib for the Animations (I assume you already know how to do those things). Then create your mob. In the mob properties area, you can set your damage, speed and other mob properties. When you go to the AI section, you can make the creature chase all entities or an entity of a specific type. I would reccoment the following:

[START] = Chase Player with a range of [Range] and a speed of [Speed] = Attack Player

Which would make the entity chase the player at a specific speed. BUT- we aren't done yet. You will have to make this entity not naturally spawn, and go to a new procedure.

This procedure will apply to all functions, and should go like this.

Every [Time] ticks, Entity will spawn in [x], [y], [z] (Of Player) and/or Every [Time] ticks in a [Numeral] Threshold, Entity will spawn in [x], [y], [z] (Of Player) for a randomized spawning time instead of a constant one.

 

Sorry, but that is all I have time for, I hope this helps. By the way, I went through the basics on how you can achieve this. Assuming you are smart, you might be able to reverse engineer these functions and manipulate them into the other 2 functions. But otherwise, I hope this helps, and good luck with modding.

 

Last seen on 18:26, 8. Sep 2024
Joined Aug 2024
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Thanks for the explanation!…
Sun, 08/25/2024 - 22:00

Thanks for the explanation!

I did some testing and managed to do something simple, make the entity disappear when the "when the player collides with this entity" trigger is activated, but I'm still pretty confused about making the entity disappear when the player looks at it.

Last seen on 11:56, 11. Sep 2024
Joined Jun 2024
Points:

User statistics:

  • Modifications:
  • Forum topics:
  • Wiki pages:
  • MCreator plugins:
  • Comments:
Is there a trigger or…
Fri, 09/06/2024 - 07:08

Is there a trigger or procedure that has [When Player Looks at Entity]?