1. Cr4nkSt4r

    Cr4nkSt4r Naked Wanderer

    I know all that, don't worry, but the fact is, all changes aren't made in the compiled stuff, all the changes were only to test if, when I made changes, can see the result. But for me, it doesn't.
    That's why I asked if you can see why maybe because this stuff is handled more times or something.

    But since I cant explain how I mean it because I see you did get it wrong, I have one question, how can I make calls in Oxidia Source like this?

    Code (Text):
    private void BeginEndCrashSequence()
    {
        LocalPlayer.SpecialActions.SendMessage("setPlaneGo", this.planeGo);
        LocalPlayer.SpecialActions.SendMessage("setSecondArtifactGo", this.artifactGo);
        LocalPlayer.SpecialActions.SendMessage("doEndPlaneCrashRoutine", this.markTr);
    }
     
    How can I say that the Server should call all that?

    or this:
    Code (Text):
    private void skipOpeningAnimation()
    {
        this.EyeAdapt.exposureCompensation = 0f;
        this.skipOpening = 1;
        base.StopCoroutine("beginPlaneCrash");
        base.StopCoroutine("moveClouds");
        base.StopCoroutine("startTimmyCutscene");
        base.Invoke("TurnOffPM", 20f);
        base.CancelInvoke("SmokeOn");
        base.CancelInvoke("GroundOn");
        base.CancelInvoke("PlaySounds");
        base.CancelInvoke("ShowDamage");
        this.ShowDamage();
        this.StopSounds();
        base.Invoke("GroundOn", 2f);
        this.enableAnimation();
        this.planeAnim.speed = 60f;
        this.planeController.skipPlaneCrash();
        this.GlassAndStuff.SetActive(0);
        this.LightsFlight.SetActive(0);
        this.PlaneInterior.material = this.PlaneCrashOff;
        this.FrontOfPlane.SetActive(0);
        return;
    }
     
    or this:
    Code (Text):
    private void Update()
    {
        if (Input.GetButtonDown("Jump") == null)
        {
            goto Label_0058;
        }
        if (this.skipOpening != null)
        {
            goto Label_0058;
        }
        if (Clock.planecrash == null)
        {
            goto Label_0058;
        }
        this.SpaceTut.SetActive(0);
        this.LightsFlight.SetActive(0);
        this.pmTrigger.SendEvent("toSkipOpening");
        this.skipOpening = 1;
        goto Label_005D;
    Label_0058:
        Input.LockMouse();
    Label_005D:
        return;
    }
     
     
    Last edited: Jan 10, 2017
  2. Wulf

    Wulf Community Admin Community Admin Oxide Developer

    I'd recommend getting familiar with C# a bit and tinkering around in Visual Studio more, otherwise I'm basically writing it myself. ;)

    I will give you a tip though... not all of that is needed, and not all of that is publicly accessible, so if part of that is needed, you'd have to use some reflection to access/modify it. I'll also say that I have managed to skip the plane before, but getting it to save is the issue I believe.
     
    Last edited: Jan 10, 2017
  3. Cr4nkSt4r

    Cr4nkSt4r Naked Wanderer

    I'm already looking into C# itself :)
    If you can't or wouldn't give an example, it's okay, I can live with that, maybe I get it myself.
    Only want to work for my own instead of waiting you finish all the other stuff you have to do.

    Do you think it's possible to hook the load function and output one of thoose savefiles as plaintext?
    Or is there a chance this save files are only SQL databases which got protected?
    Can you or someone else maybe then retrieve the key to open theese files in an SQL browser?

    I only make some noobish brainstorming but maybe no one tested theese indications, who knows, better to ask as to be silent :)


    ~ regards
     
  4. Wulf

    Wulf Community Admin Community Admin Oxide Developer

    The examples would be what you already see in the Oxide.Game.TheForest extension. Some of the portions you pasted are already in use.
     
  5. Cr4nkSt4r

    Cr4nkSt4r Naked Wanderer

    Ah, you mean one example could be thepart where you try to skip the plane scene, right?
    So I've to look at how you call that stuff and try to modify it to something I wanna test, ok, I thought that but it wasn't clear for me, thank you :)

    And the part with saving a savefile before encryption or after encryption?
    Can this be a possibility or would you say no, better look into something else?
    My hope is that there is the part with the "planePos", which is loaded so often, that we can edit this part and then decrypt so we have a poition manually and can look if that change anything.


    ~ regards
     
  6. Wulf

    Wulf Community Admin Community Admin Oxide Developer

    Not sure what you're referring to with encryption and decryption, but the save file is all handled by The Forest and shouldn't be tampered with. You just need to look to see how the game normally handles saving, and then re-create that to be triggered on command.
     
  7. Cr4nkSt4r

    Cr4nkSt4r Naked Wanderer

    Thank you ;)


    ~ regards
     
  8. Wulf

    Wulf Community Admin Community Admin Oxide Developer

    The latest build of Oxide now support The Forest dedicated server that was recently released. This issue should no longer be a problem.