Noo8_Sai8oT

New Member
Apr 6, 2023
4
4
Do you know how to complete the shipwreck story mission? i dont know how to progress. dont know how to get hook and item next to seagull
1) Pick up the plank from the raft,
2) Go up the stairs and use plank over chasm: grab hook,
3) Hook + rope (on the barrel next to Bonnie's bed)
4) Use grapple and tear off the blanket (press space for exact area),
5) Get Violet + Debbie to hold the blanket under the palm tree whilst you use the grapple to knock off the compass.
 
Last edited:
  • Red Heart
Reactions: Paholainen666

iFood

New Member
Jul 21, 2018
13
16
How to up courage above 3? Talking with npc gives only Attractiveness, delivering pizza gives only Dexterity
 

EaglePrank

New Member
May 27, 2022
11
164
v42.0 Cheat codes:
8MHYGUT?D
-14AS_R?4
Z24CXY4?P
3KD-J5T?3

For those who cannot make these cheats work, open this file when you are in the game.
For context, the cheats do not work because of a bug in the game that prevents it from writing the true value to the var GameManager_C.PlayerBoomSize
 

Wlms

Active Member
Apr 17, 2021
993
1,595
v42.0 Cheat codes:
8MHYGUT?D
-14AS_R?4
Z24CXY4?P
3KD-J5T?3

For those who cannot make these cheats work, open this file when you are in the game.
For context, the cheats do not work because of a bug in the game that prevents it from writing the true value to the var GameManager_C.PlayerBoomSize
huuuuuu, just a question, is that normal ?
1701985092305.png
 

EaglePrank

New Member
May 27, 2022
11
164
F95 Zones virus scanner doesn't like the exe. It seems fine though only some unknow vendors mark it on .
Yeah, its just marked virus because it reads and writes to runtime process memory. Those with trust issues (I'd be too actually) can compile the following code themselves and if they bother to do a VirtusTotal scan themselves, they will get the same flags.
C:
#include <iostream>
#include <Windows.h>
#include <stdio.h>
#include <tchar.h>
#include <vector>
#include <TlHelp32.h>

DWORD GetProcessId(const wchar_t* procName);
void* GetModuleBaseAddress(DWORD procId, const wchar_t* modName);
void* FindThePointedAddress(HANDLE hProc, void* ptr, std::vector<DWORD> offsets);
int main()
{
    DWORD GEngine = 0x4E27F48;
    std::vector<DWORD> offsets = {
        0xD28, //GameInstance
        0x38,  //LocalPlayers
        0x00, //[0]
        0x30, //PlayerController
        0x250, //Pawn
        0x1348,  //GameManager
        0x879 //PlayerBoomSize
    };
    const wchar_t* procName = L"MonolithBay-Win64-Shipping.exe";
    printf("Looking for \"%ls\" ...\n", procName);
    DWORD procId = GetProcessId(procName);
    if (!procId)
    {
        printf("Waiting for the game!\n");
        while (!procId)
        {
            procId = GetProcessId(procName);
        }
    }
    printf("Found \"%ls\" ...\n", procName);
    void* modBase = GetModuleBaseAddress(procId, procName);
    if (!modBase)
    {
        printf("Error: ModuleBase was missing!  Exiting....\n");
        system("pause");
        return 0;
    }
    modBase = (void*)((uintptr_t)modBase + GEngine);
    HANDLE pHandle = OpenProcess(PROCESS_ALL_ACCESS, NULL, procId);
    if (!pHandle || pHandle == INVALID_HANDLE_VALUE)
    {
        printf("Error: Could not open the target process! Exiting....\n");
        system("pause");
        return 0;
    }
    void* PlayerBoomSizeAddress = FindThePointedAddress(pHandle, modBase, offsets);
    if (!PlayerBoomSizeAddress)
    {
        printf("Error: Failed to find the inteded address! Are you sure you are in the game?\n");
        system("pause");
        return 0;
    }
    int val = 1;
    WriteProcessMemory(pHandle, (void*)PlayerBoomSizeAddress, &val, 1, nullptr);
    CloseHandle(pHandle);
    printf("Successfully cheats enabled!\n");
    system("pause");
    return 0;
}

DWORD GetProcessId(const wchar_t* procName)
{
    DWORD procId = 0;
    HANDLE hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
    if (hSnap != INVALID_HANDLE_VALUE)
    {
        PROCESSENTRY32 procEntry;
        procEntry.dwSize = sizeof(procEntry);

        if (Process32First(hSnap, &procEntry))
        {
            do
            {
                if (!_wcsicmp(procEntry.szExeFile, procName))
                {
                    procId = procEntry.th32ProcessID;
                    break;
                }
            } while (Process32Next(hSnap, &procEntry));

        }
    }
    CloseHandle(hSnap);
    return procId;
}

void* GetModuleBaseAddress(DWORD procId, const wchar_t* modName)
{
    void* MBAr = nullptr;
    HANDLE hToolHelp = CreateToolhelp32Snapshot(TH32CS_SNAPMODULE | TH32CS_SNAPMODULE32, procId);
    if (hToolHelp != INVALID_HANDLE_VALUE)
    {
        MODULEENTRY32 moduleEntry;
        moduleEntry.dwSize = sizeof(moduleEntry);
        if (Module32First(hToolHelp, &moduleEntry))
        {
            do
            {
                if (!_wcsicmp(moduleEntry.szModule, modName))
                {
                    MBAr = moduleEntry.modBaseAddr;
                    break;
                }
            } while (Module32Next(hToolHelp, &moduleEntry));
        }
    }
    CloseHandle(hToolHelp);
    return MBAr;
}

void* FindThePointedAddress(HANDLE ProcessHandle, void* OriginalPointer, std::vector<DWORD> offsets)
{
    void* address = OriginalPointer;
    for (DWORD i = 0; i < offsets.size(); ++i)
    {
        ReadProcessMemory(ProcessHandle, (BYTE*)address, &address, sizeof(address), 0);
        address = (void*)((uintptr_t)address + offsets[i]);
    }
    return address;
}
 

Doublethelewd

Member
Jan 8, 2019
162
160
v42.0 Cheat codes:
8MHYGUT?D
-14AS_R?4
Z24CXY4?P
3KD-J5T?3

For those who cannot make these cheats work, open this file when you are in the game.
For context, the cheats do not work because of a bug in the game that prevents it from writing the true value to the var GameManager_C.PlayerBoomSize
got " Malformed attachment request " cant download the file thou
 
3.30 star(s) 51 Votes