initial draft

This commit is contained in:
Obie Hinojosa 2025-01-09 14:13:24 -06:00
parent 0c04b8705f
commit 35224c4eca
85 changed files with 727 additions and 1 deletions

View File

@ -0,0 +1 @@
{}

View File

@ -0,0 +1,3 @@
{
"volume": 20
}

View File

@ -0,0 +1 @@
{}

View File

@ -0,0 +1,3 @@
{
"SomeSetting": true
}

View File

@ -0,0 +1,4 @@
{
"bonus_content": true,
"bonus_prompt": false
}

View File

@ -0,0 +1,12 @@
{
"DynamicZonesEnabled": true,
"LoadingWaitTimeoutEnabled": true,
"LobbyQolEnabled": true,
"MapSoundOptimizationsEnabled": true,
"MeshGpuInstancingEnabled": true,
"MultiThreadNetworkingEnabled": true,
"PlayerOptimizationsEnabled": true,
"ReducePhysicsUpdatesEnabled": true,
"SmoothCameraEnabled": true,
"ZzCompatOverrideMayCauseCrash": false
}

View File

@ -0,0 +1,4 @@
{
"DebugAttackSelf": false,
"RespawnOnAttackedWithGun": true
}

View File

@ -0,0 +1,37 @@
flat assembler version 1.73
Copyright (c) 1999-2014, Tomasz Grysztar.
All rights reserved.
This program is free for commercial and non-commercial use as long as
the following conditions are adhered to.
Copyright remains Tomasz Grysztar, and as such any Copyright notices
in the code are not to be removed.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are
met:
1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
The licence and distribution terms for any publically available
version or derivative of this code cannot be changed. i.e. this code
cannot simply be copied and put under another distribution licence
(including the GNU Public Licence).

BIN
Mods/GDWeave/core/FASM.DLL Normal file

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,216 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v8.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v8.0": {
"GDWeave/2.0.14.0": {
"dependencies": {
"Reloaded.Hooks": "4.3.0",
"Reloaded.Memory.Sigscan": "3.1.6",
"Serilog.Sinks.Console": "6.0.0",
"Serilog.Sinks.File": "6.0.0"
},
"runtime": {
"GDWeave.dll": {}
}
},
"Iced/1.17.0": {
"runtime": {
"lib/netstandard2.1/Iced.dll": {
"assemblyVersion": "1.17.0.0",
"fileVersion": "1.17.0.0"
}
}
},
"Reloaded.Assembler/1.0.14": {
"dependencies": {
"Reloaded.Memory.Buffers": "2.0.0"
},
"runtime": {
"lib/net6.0/Reloaded.Assembler.dll": {
"assemblyVersion": "1.0.14.0",
"fileVersion": "1.0.14.0"
}
}
},
"Reloaded.Hooks/4.3.0": {
"dependencies": {
"Iced": "1.17.0",
"Reloaded.Assembler": "1.0.14",
"Reloaded.Hooks.Definitions": "1.15.0",
"Reloaded.Memory.Buffers": "2.0.0"
},
"runtime": {
"lib/net7.0/Reloaded.Hooks.dll": {
"assemblyVersion": "4.3.0.0",
"fileVersion": "4.3.0.0"
}
}
},
"Reloaded.Hooks.Definitions/1.15.0": {
"runtime": {
"lib/net6.0/Reloaded.Hooks.Definitions.dll": {
"assemblyVersion": "1.15.0.0",
"fileVersion": "1.15.0.0"
}
}
},
"Reloaded.Memory/8.0.1": {
"runtime": {
"lib/net6.0/Reloaded.Memory.dll": {
"assemblyVersion": "8.0.1.0",
"fileVersion": "8.0.1.0"
}
}
},
"Reloaded.Memory.Buffers/2.0.0": {
"dependencies": {
"Reloaded.Memory": "8.0.1"
},
"runtime": {
"lib/net6.0/Reloaded.Memory.Buffers.dll": {
"assemblyVersion": "2.0.0.0",
"fileVersion": "2.0.0.0"
}
}
},
"Reloaded.Memory.Sigscan/3.1.6": {
"dependencies": {
"Reloaded.Memory": "8.0.1",
"Reloaded.Memory.Sigscan.Definitions": "1.1.1"
},
"runtime": {
"lib/net6.0/Reloaded.Memory.Sigscan.dll": {
"assemblyVersion": "3.1.6.0",
"fileVersion": "3.1.6.0"
}
}
},
"Reloaded.Memory.Sigscan.Definitions/1.1.1": {
"runtime": {
"lib/net5.0/Reloaded.Memory.Sigscan.Definitions.dll": {
"assemblyVersion": "1.1.1.0",
"fileVersion": "1.1.1.0"
}
}
},
"Serilog/4.0.0": {
"runtime": {
"lib/net8.0/Serilog.dll": {
"assemblyVersion": "4.0.0.0",
"fileVersion": "4.0.0.0"
}
}
},
"Serilog.Sinks.Console/6.0.0": {
"dependencies": {
"Serilog": "4.0.0"
},
"runtime": {
"lib/net8.0/Serilog.Sinks.Console.dll": {
"assemblyVersion": "6.0.0.0",
"fileVersion": "6.0.0.0"
}
}
},
"Serilog.Sinks.File/6.0.0": {
"dependencies": {
"Serilog": "4.0.0"
},
"runtime": {
"lib/net8.0/Serilog.Sinks.File.dll": {
"assemblyVersion": "6.0.0.0",
"fileVersion": "6.0.0.0"
}
}
}
}
},
"libraries": {
"GDWeave/2.0.14.0": {
"type": "project",
"serviceable": false,
"sha512": ""
},
"Iced/1.17.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-8x+HCVTl/HHTGpscH3vMBhV8sknN/muZFw9s3TsI8SA6+c43cOTCi2+jE4KsU8pNLbJ++iF2ZFcpcXHXtDglnw==",
"path": "iced/1.17.0",
"hashPath": "iced.1.17.0.nupkg.sha512"
},
"Reloaded.Assembler/1.0.14": {
"type": "package",
"serviceable": true,
"sha512": "sha512-y4I1ktSnHPIz3t1JcWk5Xiu0C0BmrlJ6nDnQGwiyz65RH6hjn9vPCcKYjpQDveuTtsebBFdTdUjxTUSw+qtZ2w==",
"path": "reloaded.assembler/1.0.14",
"hashPath": "reloaded.assembler.1.0.14.nupkg.sha512"
},
"Reloaded.Hooks/4.3.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-LhrqGeYMYCrcnlWCmSyQmdRJ7coizUixzCAHF3FVCdYT5ZHLzZnJWZoMrmYHbay762vtOYlgzQGenQgsWMxdbw==",
"path": "reloaded.hooks/4.3.0",
"hashPath": "reloaded.hooks.4.3.0.nupkg.sha512"
},
"Reloaded.Hooks.Definitions/1.15.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-bLY20vYB0fS2xwu6RDQVwlJxt2//KXLigYrCsCuzt5QFQqkvft4abq9FWPeCJYcvEeg/GQpJ3LC+108/4I2l+g==",
"path": "reloaded.hooks.definitions/1.15.0",
"hashPath": "reloaded.hooks.definitions.1.15.0.nupkg.sha512"
},
"Reloaded.Memory/8.0.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-GGshpShMtSsa7T7kMhm339nim0beVZGYH/OfTLkuDmjf6Ir/nY9u6m9US1J44YlcEFSVcexvENUf1a9fCfkZNg==",
"path": "reloaded.memory/8.0.1",
"hashPath": "reloaded.memory.8.0.1.nupkg.sha512"
},
"Reloaded.Memory.Buffers/2.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-LghMip4Q1mpr9+HsZCGYazlaxnZyMtbiGf87Ttao8Al2F+wvnRet1gPPA5qEaTWnBFg/3DNILwBBbC0W6o0tsw==",
"path": "reloaded.memory.buffers/2.0.0",
"hashPath": "reloaded.memory.buffers.2.0.0.nupkg.sha512"
},
"Reloaded.Memory.Sigscan/3.1.6": {
"type": "package",
"serviceable": true,
"sha512": "sha512-Ocy4BoSo2OpOTMGN/W++w3SwHsVqUZn57JZfAhd3tV81wvLETbAENkQzoDaw0z5/Ih8nx2yAKQTiwImkzNLeWA==",
"path": "reloaded.memory.sigscan/3.1.6",
"hashPath": "reloaded.memory.sigscan.3.1.6.nupkg.sha512"
},
"Reloaded.Memory.Sigscan.Definitions/1.1.1": {
"type": "package",
"serviceable": true,
"sha512": "sha512-yzlH3DJIc2XCEaH4aS9sJ9otiV/IVEoKOWrc53cKkx1hU8SHf3A3kE+VpPWlQmfVO5WwRKzRJ8vIr8u8RdGLGw==",
"path": "reloaded.memory.sigscan.definitions/1.1.1",
"hashPath": "reloaded.memory.sigscan.definitions.1.1.1.nupkg.sha512"
},
"Serilog/4.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-2jDkUrSh5EofOp7Lx5Zgy0EB+7hXjjxE2ktTb1WVQmU00lDACR2TdROGKU0K1pDTBSJBN1PqgYpgOZF8mL7NJw==",
"path": "serilog/4.0.0",
"hashPath": "serilog.4.0.0.nupkg.sha512"
},
"Serilog.Sinks.Console/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-fQGWqVMClCP2yEyTXPIinSr5c+CBGUvBybPxjAGcf7ctDhadFhrQw03Mv8rJ07/wR5PDfFjewf2LimvXCDzpbA==",
"path": "serilog.sinks.console/6.0.0",
"hashPath": "serilog.sinks.console.6.0.0.nupkg.sha512"
},
"Serilog.Sinks.File/6.0.0": {
"type": "package",
"serviceable": true,
"sha512": "sha512-lxjg89Y8gJMmFxVkbZ+qDgjl+T4yC5F7WSLTvA+5q0R04tfKVLRL/EHpYoJ/MEQd2EeCKDuylBIVnAYMotmh2A==",
"path": "serilog.sinks.file/6.0.0",
"hashPath": "serilog.sinks.file.6.0.0.nupkg.sha512"
}
}
}

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,13 @@
{
"runtimeOptions": {
"tfm": "net8.0",
"framework": {
"name": "Microsoft.NETCore.App",
"version": "8.0.0"
},
"configProperties": {
"System.Reflection.Metadata.MetadataUpdater.IsSupported": false,
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
}
}
}

BIN
Mods/GDWeave/core/Iced.dll Normal file

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<NativeLibs Include="$(MSBuildThisFileDirectory)*.*" />
<None Include="@(NativeLibs)">
<Link>%(RecursiveDir)%(FileName)%(Extension)</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

View File

@ -0,0 +1,10 @@
{
"Id": "BlueberryWolfi.APIs",
"PackPath": "APIs.pck",
"Metadata": {
"Name": "BlueberryWolfiAPIs",
"Author": "BlueberryWolfi",
"Version": "v1.0.2",
"Description": "Comfy APIs for Webfishing Mods"
}
}

Binary file not shown.

View File

@ -0,0 +1,13 @@
{
"Id": "BlueberryWolfi.ReelChat",
"PackPath": "ReelChat.pck",
"Dependencies": [
"BlueberryWolfi.APIs"
],
"Metadata": {
"Name": "ReelChat",
"Author": "BlueberryWolfi",
"Version": "v1.1.0",
"Description": "Proximity Voice Chat Mod for Webfishing"
}
}

View File

@ -0,0 +1,14 @@
{
"Id": "colorsexpandedpluspatterns",
"PackPath": "ColorsExpanded+Patterns.pck",
"Dependencies": [
"Sulayre.Lure"
],
"Metadata": {
"Name": "ColorsExpanded+Patterns",
"Author": "PawsBeGamin",
"Version": "1.0.0",
"Description": "Adds over 190 new fur colors and 5 new fur patterns!",
"Homepage": "https://github.com/FerretPaws/Buoy"
}
}

Binary file not shown.

View File

@ -0,0 +1,4 @@
{
"Id": "FailPunch",
"AssemblyPath": "FailPunch.dll"
}

View File

@ -0,0 +1,11 @@
{
"Id": "Kittenji.MetalGearAlert",
"PackPath": "kittenji.metal_gear_alert.pck",
"AssemblyPath": "Kittenji.MetalGearAlert.dll",
"Metadata": {
"Name": "Metal Gear Alert",
"Author": "Kittenji",
"Version": "1.0.1",
"Description": "Plays the alert sound from Metal Gear when you catch a fish."
}
}

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,8 @@
{
"Id": "PotatoRadio",
"AssemblyPath": "PotatoRadioPathFetcher.dll",
"Dependencies": [
"Sulayre.Lure"
],
"PackPath": "PotatoRadio.pck"
}

View File

@ -0,0 +1,23 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v8.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v8.0": {
"RingsABell/1.0.0.0": {
"runtime": {
"RingsABell.dll": {}
}
}
}
},
"libraries": {
"RingsABell/1.0.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,11 @@
{
"Id": "RingsABell",
"AssemblyPath": "RingsABell.dll",
"PackPath": "RingsABell.pck",
"Metadata": {
"Name": "RingsABell",
"Author": "lunakittyyy",
"Version": "1.0.0",
"Description": "Makes the bell collar in WEBFISHING make cute ringing noises :3 "
}
}

View File

@ -0,0 +1,10 @@
{
"Id": "Sproutian.ShowClicks",
"AssemblyPath": "Sproutian.ShowClicks.dll",
"Metadata": {
"Name": "Show Clicks Mod",
"Author": "Sproutian",
"Version": "1.0.5",
"Description": "Show the number of clicks required to break a bar"
}
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

View File

@ -0,0 +1,13 @@
{
"Id": "Sulayre.Lure",
"AssemblyPath": "Sulayre.Lure.dll",
"PackPath": "Sulayre.Lure.pck",
"Dependencies": [],
"Metadata": {
"Name": "Lure",
"Author": "Sulayre, ZeaTheMays and GitHub Contributors",
"Version": "4.2.2",
"Description": "Legacy (Pre-Rewrite) version of a project that aims to restore unused game functionality, also used as an API to make adding content to WEBFISHING easier, faster and compatible.",
"Homepage": "https://github.com/Sulayre/WebfishingLure"
}
}

View File

@ -0,0 +1,23 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v8.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v8.0": {
"TackleBox/1.0.0": {
"runtime": {
"TackleBox.dll": {}
}
}
}
},
"libraries": {
"TackleBox/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

View File

@ -0,0 +1,13 @@
{
"Id": "TackleBox",
"AssemblyPath": "TackleBox.dll",
"PackPath": "TackleBox.pck",
"Dependencies": [],
"Metadata": {
"Name": "TackleBox",
"Author": "Jade and Contributors",
"Version": "0.5.2",
"Description": "A mod menu for WEBFISHING and config API for mod devs!",
"Homepage": "https://github.com/puppy-girl/TackleBox"
}
}

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,11 @@
{
"Id": "TitleAPI",
"PackPath": "TitleAPI.pck",
"AssemblyPath": "TitleAPI.dll",
"Metadata": {
"Name": "TitleAPI",
"Author": "IamKikin & Nowaha",
"Version": "1.0.5",
"Description": "Register your own Titles! **DEVELOPER API!**"
}
}

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,11 @@
{
"Id": "WebWardrobe",
"AssemblyPath": "WebWardrobe.dll",
"PackPath": "WebWardrobe.pck",
"Metadata": {
"Name": "WebWardrobe",
"Author": "Nowaha",
"Version": "1.0.5",
"Description": "Load and save outfits!"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View File

@ -0,0 +1,11 @@
{
"Id": "bytefrags.BetterFireplace",
"PackPath": "bytefrags.BetterFireplace.pck",
"Metadata": {
"Name": "BetterFireplace",
"Author": "bytefrags",
"Version": "1.0.5",
"Description": "This mod enhances the campfire atmosphere by amplifying the crackling fireplace sound.",
"Homepage": "https://thunderstore.io/"
}
}

View File

@ -0,0 +1,9 @@
{
"id": "bytefrags.BetterFireplace",
"title": "BetterFireplace",
"author": "bytefrags",
"description": "This mod enhances the campfire atmosphere by amplifying the crackling fireplace sound.",
"version": "1.0.5",
"enabled": true,
"third_party": true
}

Binary file not shown.

View File

@ -0,0 +1,10 @@
{
"Id": "Meepso.NLag",
"AssemblyPath": "Meepso.NLag.dll",
"Metadata": {
"Name": "NLag",
"Author": "Meepso",
"Version": "1.0.5",
"Description": "Make the fish multithreaded"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

View File

@ -0,0 +1,12 @@
{
"Id": "webfishing_gun",
"AssemblyPath": "webfishing_gun.dll",
"PackPath": "webfishing_gun.pck",
"Dependencies": [ "Sulayre.Lure" ],
"Metadata": {
"Name": "webfishing_gun",
"Description": "Adds a Gun",
"Author": "Lily",
"Version": "1.0.0"
}
}

View File

@ -0,0 +1,23 @@
{
"runtimeTarget": {
"name": ".NETCoreApp,Version=v8.0",
"signature": ""
},
"compilationOptions": {},
"targets": {
".NETCoreApp,Version=v8.0": {
"webfishing_gun/1.0.0": {
"runtime": {
"webfishing_gun.dll": {}
}
}
}
},
"libraries": {
"webfishing_gun/1.0.0": {
"type": "project",
"serviceable": false,
"sha512": ""
}
}
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,5 @@
{
"Id": "Zea.CosmeticPack",
"PackPath": "zea.cosmetics.pck",
"Dependencies" : ["Sulayre.Lure"]
}

Binary file not shown.

BIN
Mods/winmm.dll Normal file

Binary file not shown.

View File

@ -9,3 +9,10 @@ This repository contains a mod installer/syncing script that adds stuff to the S
# Mod List # Mod List
Yup. Here are the mods. Nothin to see here. Just, y'know, a bunch of mods. That exist. They're listed there, trust me. No need to scroll, you can just take me at my word for this one. They're there. Yup. Here are the mods. Nothin to see here. Just, y'know, a bunch of mods. That exist. They're listed there, trust me. No need to scroll, you can just take me at my word for this one. They're there.
# Project Outline
1. Download mods from repository
2. Extract mods from tarball into game folder
- might have to account for whether the game is installed on the main drive or another one
- would reallllyyyy not be fun if i had to please god dont make me do this i have no idea how to dynamically find a steam game directory
3.

View File

Before

Width:  |  Height:  |  Size: 200 KiB

After

Width:  |  Height:  |  Size: 200 KiB

View File

@ -0,0 +1,170 @@
# -----------------------read me?---------------------------
# compiling this is super easy, just run `pip install wget` and `pip install pyinstaller` and then
# compile with `python -m PyInstaller --onefile installer.py --icon image.ico`
# (wget is a dependency for this python script that doesnt come with python by default)
# (and pyinstaller is the packagey thingamajig that compiles the code into an executable.)
# also, peep the organized code blocks!! am i cool or what?
# something worthy of note: this code desperately needs to be refactored. right now literally
# everything important happens under a big if elif statement and its pretty fucking stupid
# -----------------import dependencies----------------------
import wget; import os; import platform; import time
import shutil; import tarfile
from pathlib import Path
# -----------define some functions ahead of time------------
def delete_directory(directory_to_delete):
#this defines a function to delete a directory (no shit)
try:
shutil.rmtree(str(directory_to_delete))
except OSError as e:
print("[ERR!]: %s - %s." % (e.filename, e.strerror))
def delete_file(file_to_delete):
#this defines a function to delete a directory (no shit)
try:
os.remove(str(file_to_delete))
except OSError as e:
print("[ERR!]: %s - %s." % (e.filename, e.strerror))
def extract_tar(tar_file_path, extract_to):
#this defines a function to decompress a tar.gz file
with tarfile.open(tar_file_path, 'r') as tar:
tar.extractall(extract_to)
def print_ascii_art():
#someone's gonna think im a furry or a femboy or some shit because of this.
print()
print()
print(" :+++++=")
print(" -++++++.")
print(" :++++++. .")
print(" .++++++. -=. -: .::")
print(" =+++++. :=. =- .--:. -")
print(" =+++++. .+ =: -=. :=")
print(" =+++++. +. :.=* .=: =:")
print(" =++++= .+ +. -- :+ .=")
print(" .+++++= .= ..=: :. =")
print(" .++=++- .= .+- =")
print(" ==++*=::.. * +")
print(" =*#-+- .:---:. :=-- .-=%. --=#- ..::.--")
print(" :#=-*- .::--:.*: .+ #@. - *@@- .. -#:")
print(" ++:*. .:--==:--:: .%%-.. :=.")
print(" =++.:...::::::..... :---+-:. .:.: --")
print(" *=..:::.. .=.")
print(" :-. .=:::")
print(" ..:=. :-..-:---:")
print(" ==:- .=-: :=-")
print(" .= =- :--. .--")
print(" -- :-:. -= .::::-:=.")
print(" :- =- :+ .+")
print(" --- -: .+ +.")
print(" := -= .+ =:")
print(" +. -: =: :=.")
print(" -. .=: --.....::-:")
print(" .=- .= :-:----- .::::.")
print(" .-: .= ..+:")
print(" -=......:.:-:+ :=")
print(" .::--::... := -")
print(" =: =:")
print(" --::.--")
print(" ....")
print()
def windows_check_folder_exists(folder):
#checks for mod folder existence and outputs [WARN!]
dir = os.path.normpath(str(Path.cwd()) + "/" + str(folder))
# fuck you microsoft
# this is some high-tier BULLSHIT right here
# print(dir)
if not os.path.exists(dir):
print()
print("[WARN!]: Mod folder not found. (is Fabric installed?)")
print("[WARN!]: (note: the script will go on as usual without breaking anything, but if")
print("[WARN!]: you don't have fabric installed, your mods won't load when you start the game.")
os.mkdir("mods")
print()
time.sleep(20)
def check_for_old_mod_archive(filepath):
#deletes old downloaded mod archives
if os.path.exists(filepath):
print("Found previously downloaded archive, deleting...")
os.remove(filepath)
def compress_tar(folder_path, output_file):
with tarfile.open(output_file, "w:gz") as tar:
tar.add(folder_path, arcname=os.path.basename(folder_path))
#gemini lowkey slayed w this one
# --------------------the real shit!------------------------
global gamedir
global modfolder #`global` sets these variables to exist outside of the scope of these specific `if` statements.
homedir = os.path.expanduser("~")
os.chdir(homedir) #this cd's to the home folder
# vv REPLACE THIS! vv
# This only really needs to be a backup of the game save, the mods are pretty whatevs.
# really, if anything breaks and people want it fixed, theyll just come to me, so there's no point in giving them a backup.
if platform.system() == "Linux":
print("Operating system detected: GNU/Linux")
print("Backing up save files...")
print()
print("Don't close the window! This'll take a moment...")
os.chdir(savedir)
os.chdir('..') #go up one folder
compress_tar("webfishing_2_newver", "webfishing-save-backup.tar.gz")
os.chdir(".steam/steam/steamapps/compatdata/3146520/pfx/drive_c/users/steamuser/AppData/Roaming/Godot/app_userdata/webfishing_2_newver/")
savedir = Path.cwd()#environ var with path to save files
os.chdir(homedir)#cd back to home folder
os.chdir(".local/share/Steam/steamapps/common/WEBFISHING/") #cd to game files
gamedir = Path.cwd() #set environment variable with path to game files
print("Changed current working directory to '" + str(gamedir) + "'")
delete_directory("GDWeave") #delete mods if they already exist
delete_file("winmm.dll") #this probably doesn't actually need to be removed before updating but for now we're doing it
elif platform.system() == "Windows":
print("Operating system detected: Microsoft Windows")
os.chdir("AppData/Godot/app_userdata/webfishing_2_newver")
savedir = Path.cwd()
os.chdir(homedir)
os.chdir("C:/Program Files (x86)/Steam/steamapps/common/WEBFISHING/")
gamedir = Path.cwd()
delete_directory("GDWeave") #delete mods if they already exist
delete_file("winmm.dll") #this probably doesn't actually need to be removed before updating but for now we're doing it
os.chdir(savedir)
os.chdir('..') #go up one folder
compress_tar("webfishing_2_newver", "webfishing-save-backup.tar.gz")
# --------------------the real shit!------------------------