How can I make this a falloff map?

So I currently am making a procedural terrain asset to use in my projects, but I have only one issue: I can’t make it a falloff map. I have tried everything in my small knowledge that has worked before, but to no prevail. Here is my script:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

[RequireComponent(typeof(MeshFilter))]
public class MapGenerator : MonoBehaviour
{
    #region Variables
    Mesh mesh;
    Vector3[] _Vertices;
    int[] _Triangles;
    [Header("Settings")]

    [Range(1, 9999)]
    public int xSize = 100;
    [Range(1, 9999)]
    public int zSize = 100;
    [Range(0, 10000)]
    public float offsetX;
    [Range(0, 10000)]
    public float offsetY;
    public float Noise1Scale = 3.26f;
    public float Noise1Amp = 18.76f;
    public float Noise2Scale = 30f;
    public float Noise2Amp = -4.7f;
    public float Noise3Scale = 30f;
    public float Noise3Amp = 1f;
    public AnimationCurve Falloff;

    [Header("Details")]
    public float Lacunarity = 0.5f;
    public float Octaves = 0.5f;
    [Range(1, 10000)]
    public float Persistance = 0.5f;
    const int MapChunkSize = 241;
    [Range(1, 8)]
    public int LOD;
    int MCSIncrement;
    int VPL;
    int sizes;
    public Texture2D Fresnel;
    int FresnelEffect;
    int g;
    int x2;
    int y4;
    #endregion
   
    void Start()
    {
        mesh = new Mesh();
        GetComponent<MeshFilter>().mesh = mesh;

        CreateTerrain();
        UpdateTerrain();
    }

    private void Update()
    {
        MCSIncrement = (LOD == 0)? 1: LOD * 2;
        VPL = (xSize - 1) / MCSIncrement + 1;
        sizes = xSize / zSize;

        
    }


    void CreateTerrain()
    {
        _Vertices = new Vector3[(xSize + 1) * (zSize + 1)];

        float amplitude = 1f;
        float frequency = 1f;

        amplitude *= Persistance;
        frequency *= Lacunarity;

        for (int i = 0, z = 0; z <= zSize; z ++)
        {
            for (int x = 0; x <= xSize; x++)
            {
                float y1 = Mathf.PerlinNoise(x * 0.3f + offsetX, z * 0.3f + offsetY) * Noise1Amp / Noise1Scale * 2 - 1 * amplitude;
                float y2 = Mathf.PerlinNoise(x * 0.03f + offsetX, z * 0.03f + offsetY) * Noise2Amp / Noise2Scale * 0.5f * amplitude;
                float y3 = Mathf.PerlinNoise(x * 0.003f + offsetX, z * 0.003f + offsetY) * Noise3Amp / Noise3Scale * 0.25f * amplitude;

                float yAxis = y1 * y2 / y3;

                float sampleX = x * frequency;
                float sampleY = z * frequency;

                _Vertices *= new Vector3(sampleX, yAxis, sampleY);*

i++;
}
}

_Triangles = new int[xSize * zSize * 6];

int vert = 0;
int tris = 0;
for (int i = 0; i < Octaves; i++)
{
for (int z = 0; z < zSize; z++)
{
for (int x = 0; x < xSize; x++)
{
_Triangles[tris + 0] = vert + 0;
_Triangles[tris + 1] = vert + xSize + 1;
_Triangles[tris + 2] = vert + 1;
_Triangles[tris + 3] = vert + 1;
_Triangles[tris + 4] = vert + xSize + 1;
_Triangles[tris + 5] = vert + xSize + 2;

vert++;
tris += 6;
}
vert++;
}
}
}

void UpdateTerrain()
{
mesh.Clear();

mesh.vertices = _Vertices;
mesh.triangles = _Triangles;
mesh.RecalculateNormals();

mesh.RecalculateBounds();
MeshCollider meshCollider = gameObject.GetComponent();
meshCollider.sharedMesh = mesh;
}
}
My main source was a brackeys tutorial series an sebastian lague’s series on procedural terrain, and I have tried everything I know about. Please help!

@wideeyenow_unity What I mean by “falloff map” in a map that gradually drops in height to simulate islands.