I think i downloaded and ran a virus
▲ 143 r/SwitchPirates+1 crossposts

I think i downloaded and ran a virus

there was a data, renpy, lib,log,setup, setup.py in the folder after i extracted the downloaded file and i ran the setup application and now someoone on a reddit post said it was a virus does anyone have any idea with this and what i shld do next, nothing suspicious detected by defender, ran offline scans, checked task manager, checked recent intallations, ran a malwarebyts scan it said founf 28 threats and resolved it, deleted everything related to those files, what to do next also when i ran the applicaiton file whose name was setup it didnt show me any popups but when i clicked it it generated a setup.py file and this was the content in that file- #!/usr/bin/env python

# This file is part of Ren'Py. The license below applies to Ren'Py only.

# Games and other projects that use Ren'Py may use a different license.

# Copyright 2004-2025 Tom Rothamel <pytom@bishoujo.us>

#

# Permission is hereby granted, free of charge, to any person

# obtaining a copy of this software and associated documentation files

# (the "Software"), to deal in the Software without restriction,

# including without limitation the rights to use, copy, modify, merge,

# publish, distribute, sublicense, and/or sell copies of the Software,

# and to permit persons to whom the Software is furnished to do so,

# subject to the following conditions:

#

# The above copyright notice and this permission notice shall be

# included in all copies or substantial portions of the Software.

#

# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,

# EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF

# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND

# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE

# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION

# OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION

# WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

from __future__ import print_function, absolute_import

import os

import sys

import warnings

# Functions to be customized by distributors. ################################

def path_to_gamedir(basedir, name):

"""

Returns the absolute path to the directory containing the game

scripts an assets. (This becomes config.gamedir.)

`basedir`

The base directory (config.basedir)

`name`

The basename of the executable, with the extension removed.

"""

# A list of candidate game directory names.

candidates = [ name ]

# Add candidate names that are based on the name of the executable,

# split at spaces and underscores.

game_name = name

while game_name:

prefix = game_name[0]

game_name = game_name[1:]

if prefix == ' ' or prefix == '_':

candidates.append(game_name)

# Add default candidates.

candidates.extend([ 'game', 'data', 'launcher/game' ])

# Take the first candidate that exists.

for i in candidates:

if i == "renpy":

continue

gamedir = os.path.join(basedir, i)

if os.path.isdir(gamedir):

break

else:

gamedir = basedir

return gamedir

def path_to_common(renpy_base):

"""

Returns the absolute path to the Ren'Py common directory.

`renpy_base`

The absolute path to the Ren'Py base directory, the directory

containing this file.

"""

path = renpy_base + "/renpy/common"

if os.path.isdir(path):

return path

return None

def path_to_saves(gamedir, save_directory=None): # type: (str, str|None) -> str

"""

Given the path to a Ren'Py game directory, and the value of config.

save_directory, returns absolute path to the directory where save files

will be placed.

`gamedir`

The absolute path to the game directory.

`save_directory`

The value of config.save_directory.

"""

import renpy # u/UnresolvedImport

if save_directory is None:

save_directory = renpy.config.save_directory

save_directory = renpy.exports.fsencode(save_directory) # type: ignore

# Makes sure the permissions are right on the save directory.

def test_writable(d):

try:

fn = os.path.join(d, "test.txt")

open(fn, "w").close()

open(fn, "r").close()

os.unlink(fn)

return True

except Exception:

return False

# Android.

if renpy.android:

paths = [

os.path.join(os.environ["ANDROID_OLD_PUBLIC"], "game/saves"),

os.path.join(os.environ["ANDROID_PRIVATE"], "saves"),

os.path.join(os.environ["ANDROID_PUBLIC"], "saves"),

]

for rv in paths:

if os.path.isdir(rv) and test_writable(rv):

break

else:

rv = paths[-1]

print("Saving to", rv)

return rv

if renpy.ios:

from pyobjus import autoclass # type: ignore

from pyobjus.objc_py_types import enum # type: ignore

NSSearchPathDirectory = enum("NSSearchPathDirectory", NSDocumentDirectory=9)

NSSearchPathDomainMask = enum("NSSearchPathDomainMask", NSUserDomainMask=1)

NSFileManager = autoclass('NSFileManager')

manager = NSFileManager.defaultManager()

url = manager.URLsForDirectory_inDomains_(

NSSearchPathDirectory.NSDocumentDirectory,

NSSearchPathDomainMask.NSUserDomainMask,

).lastObject()

# url.path seems to change type based on iOS version, for some reason.

try:

rv = url.path().UTF8String()

except Exception:

rv = url.path.UTF8String()

if isinstance(rv, bytes):

rv = rv.decode("utf-8")

print("Saving to", rv)

return rv

# No save directory given.

if not save_directory:

return os.path.join(gamedir, "saves")

if "RENPY_PATH_TO_SAVES" in os.environ:

return os.environ["RENPY_PATH_TO_SAVES"] + "/" + save_directory

# Search the path above Ren'Py for a directory named "Ren'Py Data".

# If it exists, then use that for our save directory.

path = renpy.config.renpy_base

while True:

if os.path.isdir(path + "/Ren'Py Data"):

return path + "/Ren'Py Data/" + save_directory

newpath = os.path.dirname(path)

if path == newpath:

break

path = newpath

# Otherwise, put the saves in a platform-specific location.

if renpy.macintosh:

rv = "~/Library/RenPy/" + save_directory

return os.path.expanduser(rv)

elif renpy.windows:

if 'APPDATA' in os.environ:

return os.environ['APPDATA'] + "/RenPy/" + save_directory

else:

rv = "~/RenPy/" + renpy.config.save_directory # type: ignore

return os.path.expanduser(rv)

else:

rv = "~/.renpy/" + save_directory

return os.path.expanduser(rv)

# Returns the path to the Ren'Py base directory (containing common and

# the launcher, usually.)

def path_to_renpy_base():

"""

Returns the absolute path to the Ren'Py base directory.

"""

renpy_base = os.path.dirname(os.path.abspath(__file__))

renpy_base = os.path.abspath(renpy_base)

return renpy_base

def path_to_logdir(basedir):

"""

Returns the absolute path to the log directory.

`basedir`

The base directory (config.basedir)

"""

import renpy # u/UnresolvedImport

if renpy.android:

return os.environ['ANDROID_PUBLIC']

return basedir

def predefined_searchpath(commondir):

import renpy # u/UnresolvedImport

# The default gamedir, in private.

searchpath = [ renpy.config.gamedir ]

if renpy.android:

# The public android directory.

if "ANDROID_PUBLIC" in os.environ:

android_game = os.path.join(os.environ["ANDROID_PUBLIC"], "game")

if os.path.exists(android_game):

searchpath.insert(0, android_game)

# Asset packs.

packs = [

"ANDROID_PACK_FF1", "ANDROID_PACK_FF2",

"ANDROID_PACK_FF3", "ANDROID_PACK_FF4",

]

for i in packs:

if i not in os.environ:

continue

assets = os.environ[i]

for i in [ "renpy/common", "game" ]:

dn = os.path.join(assets, i)

if os.path.isdir(dn):

searchpath.append(dn)

else:

# Add path from env variable, if any

if "RENPY_SEARCHPATH" in os.environ:

searchpath.extend(os.environ["RENPY_SEARCHPATH"].split("::"))

if commondir and os.path.isdir(commondir):

searchpath.append(commondir)

if renpy.android or renpy.ios:

print("Mobile search paths:" , " ".join(searchpath))

return searchpath

##############################################################################

android = ("ANDROID_PRIVATE" in os.environ)

def main():

renpy_base = path_to_renpy_base()

sys.path.append(renpy_base)

# Ignore warnings.

warnings.simplefilter("ignore", DeprecationWarning)

# Start Ren'Py proper.

try:

import renpy.bootstrap

except ImportError:

print("Could not import renpy.bootstrap. Please ensure you decompressed Ren'Py", file=sys.stderr)

print("correctly, preserving the directory structure.", file=sys.stderr)

raise

# Set renpy.__main__ to this module.

renpy.__main__ = sys.modules[__name__] # type: ignore

renpy.bootstrap.bootstrap(renpy_base)

if __name__ == "__main__":

main()

u/yatokyami — 3 days ago

Help me with my builds for suisui lucilla and hiyuki

just built my suisui at first i did the traditional 34311 setup lol then found out that she benefits 33111 more and luckily i got some decent rolls i believe, on the other hand hiyuki is so hard to build ive been farming her echoes ever since she came out and still feels like my buid is pretty mid, help me with which echoes to replace and which to keep. Also need to know how much cr is needed coz idk if im lowballing or overcapping on her crit since sometimes midfight i check her cr is above 100

u/yatokyami — 15 days ago

Now that her team is out someone please tell me the optimal stats for all three of them so i can build the best hiyuki team

been farming her echoes ever since she came out and still feels like my buid is pretty mid, help me with which echoes to replace and which to keep. Also need to know how much cr is needed coz idk if im lowballing or overcapping on her crit since sometimes midfight i check her cr is above 100

u/yatokyami — 15 days ago

Can't believe even my low investment aemeath team is this broken (ig she's my most powerful unit now)

i havent even min maxed her echoes just slapped random echoes, lynae and mornye on static mist and discord yet they overperforming my other teams nowadays, all s0 btw. how is yalls aemeath performing

u/yatokyami — 27 days ago

Does anyone know how to achieve this effect? Probably framer or unicorn studio

I found this in a portfolio website and really liked the effect, im thinking of recreating this for my website but im unable to wrap my head around how to make this. My guess is it's either framer or unicorn studio but im unable to make this in either of them (prolly skill issue)

u/yatokyami — 1 month ago

How do I clear this toa floor 1 now TT

I cleared the floor 1 initially with augusta mortefi and sk but to clear the floor 4 i swapped sk in the lucy reb team coz i was unable to clear it woth mornye or verina, but now im unabke to 3 star the first floor without sk, I tried zani phoebe verina, hiyuki lynae, aemeath lynae, lucy reb, mono fusion n qiu phrolova too but it feels like nothing is working out without shorekeeper. all chars are s0 except sk shes s1 I think my builds are decent too thanks to krow or ilovetowin something channel guides. anything i shld try or this is gg. Before this ive cleared every toa

u/yatokyami — 2 months ago

Can I skip Lucilla for my S0R1 Hiyuki

I dont really like lucilla's design or playstyle, and because of cp collab im totally broke on asterites (lost 50-50 on lucy) I initially planned to squeeze out as much as asterites from exploration and try to get her but now that's not the case there's no asterites pending on my acc, I have lynae but she's on my aemeath team. is there chances that we'll get another teammate/sub dps for hiyuki in the future and what are her current sub dps options except for lucilla and lynae

reddit.com
u/yatokyami — 2 months ago

Need help, how to improve my build also i dont understand which stats have caps and what to actually prioritize

most of the time i kept chasing agility and crit coz i thought agility also converts into crit but i read somewhere that it has a cap and after 100% cap reached it becomes useless or something like that, also is the attribute attack useless too after the martial art bonuses are 100% and if so what stats should i actually be chasing now.

u/yatokyami — 3 months ago

Need help deciding which gaming mouse to buy

these four are the options im considering if anyone has use any of these please let me know how ur experience and performance of the mouse was. Im a casual gamer not fps games either so dont worry about pinpoint precision and accuracy, somehow i dont like much rgb eating over my battery either so i will most probably use with lights off. what matters to me is long term, performance, comfort. i wanted to go for logitech g304 but its way off budget. Also i font want wired mouse so not going for the wired logitech mouses or razer death adder either.

u/yatokyami — 3 months ago

Need help deciding whch mouse to buy

these four are the options im considering if anyone has use any of these please let me know how ur experience and performance of the mouse was. Im a casual gamer not fps games either so dont worry about pinpoint precision and accuracy, somehow i dont like much rgb eating over my battery either so i will most probably use with lights off. what matters to me is long term, performance, comfort. i wanted to go for logitech g304 but its way off budget. Also i font want wired mouse so not going for the wired logitech mouses or razer death adder either.

u/yatokyami — 3 months ago

funny thing is I just went all tuning at once on this one, didn't check the stats one by one. I was SHOOOCKK

u/yatokyami — 4 months ago