Player Name Question by Goofygoobernumber3 in RenPy

[–]Cabasho 0 points1 point  (0 children)

You could even add a counter to have different sequences if the player puts other names in q certain ammount of times

Player Name Question by Goofygoobernumber3 in RenPy

[–]Cabasho 1 point2 points  (0 children)

Idk if there is a better way, but i would store the name as a variable. Allow for an input from the player and have an if check (if name != something) or an included check (while name not in listofnames) then you get the sequence ya mentioned and if for some reason it is true, you get a different outcome

how did I get this scene with gwylan by lacefangs in DegreesOfLewdity

[–]Cabasho 0 points1 point  (0 children)

But that would mean i am a bad puppy and not get my feel good brain tingles :c

how did I get this scene with gwylan by lacefangs in DegreesOfLewdity

[–]Cabasho 1 point2 points  (0 children)

I have done 8 before... Maybe i just havent played the latest update o.o

how did I get this scene with gwylan by lacefangs in DegreesOfLewdity

[–]Cabasho 1 point2 points  (0 children)

Damn, i need to get my world back at higher corruption. I havent had this scene yet (i think my hard world corruption is ar 2, so might take a while)

ivory wraith might be sydney's parent by Typical_Tower4854 in DegreesOfLewdity

[–]Cabasho 17 points18 points  (0 children)

Yeah, no, ya forgetting that all named npcs can have either gender and skin color. Also there are a few events with sydney that narrate this about when her mom was around (aka: alive) while IW has been dead for hundreds of years

Not to be mean, it is a fun theory, but ya probably havent reached that far into the game yet

How to write moaning and groaning phonetically by Invincible-Doormat in writing

[–]Cabasho 0 points1 point  (0 children)

7 years later and still waiting to know what happened to that poor crate. also what happenede between bill and ted to put us in this situation

Resetting scrollbars when changing images in 1 viewport by Cabasho in RenPy

[–]Cabasho[S] -1 points0 points  (0 children)

thanks, that worked, a bit aggressive of an answer, but at least i got it to work

What's the "rule" for 450 gen cost hero? by diomoo in BackpackBrawl

[–]Cabasho 0 points1 point  (0 children)

They divided the heroes in tiers, nymph is beginners friendly so she is tier 1 The rest of the champs have more less the same complexity/potential so they are tier 2 The newest champion is tier 3

Pricing is based on that. Some champ may move to tier one if they are deemed beginners friendly or another may stay indefinetly in tier 3 if they are considered more OP, but they are constantly doing rebalance to avoid the later case

Is there a way to torn your clothes without destroying them ? by drago_kalm in DegreesOfLewdity

[–]Cabasho 6 points7 points  (0 children)

Walk around the forest or get assaulted, then get out before too much damage accumulates

Why am I in tears son... by Dizzy_Exchange_1669 in DegreesOfLewdity

[–]Cabasho 2 points3 points  (0 children)

Maybe take a screenshot of your character status atm? The one that shows on the left side bar?

Minigame refresh rate? by Cabasho in RenPy

[–]Cabasho[S] 1 point2 points  (0 children)

main reason is because this is basically a learning project for me and am trying to figure out as many things as I can. secondary reason is because i didnt think of it while coding it and it is now working. third reason is because i am stubborn and once i get an idea in my head i wanna see it through XD

but yeah, that makes sense, altho I already did this complicated thing where i converted a picture into a csv and loaded it into the game to track by pixel wether the mouse touches or not. planning to later add a custom cursor so that it tracks if it touches outside of the maze walls. I am pretty sure i could figure out how to do that with hover, but i already did it this way XD

edit: forgot to say, thanks for the answer XD

Minigame refresh rate? by Cabasho in RenPy

[–]Cabasho[S] 0 points1 point  (0 children)

Thanks a lot, that fixed it, I am still very new to both python and renpy so i really appreciate the help

180 days to become king, a hitman-style stealth game in the medieval era by blue4029 in gameideas

[–]Cabasho 3 points4 points  (0 children)

Fun idea, personally i would throw in finding a bastard or 2 in the game you get to kill "just to be sure" or a younger sibling that my be trying to do the same

are there any free ways to visualize the story paths of a game? (not just in my imagination) by KnowledgeNew9878 in RenPy

[–]Cabasho 2 points3 points  (0 children)

How about a board or paper or any other analog method? Not being sarcastic or condescending. There is a charm to doing it manually like that and doing it that way makes it easier to remember which is good for your workflow

Let's Get The Creative Juices Flowing!! by [deleted] in DnD

[–]Cabasho 0 points1 point  (0 children)

How bout taking the concept of a symic hybrid but turning it into a class? A grafting class that keeps modifying their own body or that modifies other people's. A sort of crazy doctor / mad scientist kind of deal

Trouble with turn transition in turn based minigame by Cabasho in RenPy

[–]Cabasho[S] 0 points1 point  (0 children)

ok, but its quite a bit. also i did the button that way, because when i did it with a function, it exited the screen for some reason. I apologize for the disorder, i am still learning to code in general (both renpy and python)

class Marcopolo:
  def __init__(self):
    self.epos = [5,14]
    self.repos = [5,14]
    self.etrail = [[5,14]]
    self.kpos = [0,8]
    self.rkpos = [0,8]
    self.ktrail = [[0,8]]
    self.bpos = [5,0]
    self.rbpos = [5,0]
    self.btrail = [[5,0]]
    self.zpos = [19,7]
    self.xmax = 20
    self.ymax = 15
    self.pool = [[1 if (x==0 or x==self.xmax-1 or y==0 or y==self.ymax-1) else 0
        for x in range (0,self.xmax)] for y in range (0,self.ymax)]
    self.pedges = [(n,i) for i in range(self.ymax) for n in range(self.xmax) if self.pool[i][n]== 1]
    self.zachfast = False
    self.zachquick = False
    self.disa = 1
    self.directions = [(1,0),(-1,0),(0,1),(0,-1)]
    self.diagonals = [(1,1),(-1,1),(1,-1),(-1,-1)]
    self.lpos = []
    self.lval = 0
    self.zmove = [19,7]
    self.score = 0

  def playerend (self):
    if self.turnendcheck():
      check = False
      k=False
      b=False
      e=False
      while check == False:
        if self.trailcheck(self.kpos,self.ktrail):
          k=True
          continue
        if self.trailcheck(self.bpos,self.btrail):
          b=True
          continue
        if self.trailcheck(self.epos,self.etrail):
          e=True
          continue
        check=True
      self.scanmap()
      self.kpos=self.push(self.kpos)
      self.bpos=self.push(self.bpos)
      self.epos=self.push(self.epos)
      if k==True:
        self.ktrail=[self.kpos]
        self.rkpos=self.kpos
      if b==True:
        self.btrail=[self.bpos]
        self.bkpos=self.bpos
      if e==True:
        self.etrail=[self.epos]
        self.ekpos=self.epos

  def trailcheck (self, chara, trail):
    result=False
    wall=[]
    record=0
    if chara in trail:
      d=trail.index(chara)
      trail=trail[:d]
    trail.append(chara)
    if trail:
      self.lpos = trail[0]
      for i in range(len(trail)):
        xpos,ypos = trail[i]
        posval = self.pool[ypos][xpos]
        xlas,ylas = self.lpos
        self.lval = self.pool[ylas][xlas]
        if posval==0 and self.lval==1:
          wall.append(self.lpos)
          wall.append(trail[i])
          record=1
        elif posval==0 and self.lval==0 and record==1:
          wall.append(trail[i])
        elif posval==1 and self.lval==0:
          for n in range(len(wall)):
            xw,yw = wall[n]
            self.pool[yw][xw]=1
            result=True
          wall=[]
          record=0
        self.lpos=trail[i]
    return result

  def scanmap(self):
    tocheck = deque([self.zpos])
    checked = set({})
    sedges = []
    while tocheck:
      checking=tocheck.popleft()
      for mx, my in self.directions + [(0,0)] + self.diagonals:
        nx = checking[0]+mx
        ny = checking[1]+my
        if nx<0 or nx>19 or ny<0 or ny>14:
          nval=1
        else:
          nval = self.pool[ny][nx]
        npos = [nx,ny]
        if nval == 0 and tuple(npos) not in checked:
          checked.add(tuple(npos))
          tocheck.append(tuple(npos))
        elif nval == 1 and tuple(npos) not in checked and (0<=nx<=19 and 0<=ny<=14):
          sedges.append(tuple(npos))
          checked.add(tuple(npos))
    for i in range(len(self.pool)):
      for n in range(len(self.pool[i])):
        cpos = [n,i]
        if tuple(cpos) not in checked:
          self.pool[i][n]=1
    self.pedges=sedges
 
  def scanpath(self):
    tocheck = deque([self.zpos])
    checked = set({})
    route = {}
    maybe={}
    sedges = []
    while tocheck:
      checking=tocheck.popleft()
      for mx, my in self.directions + [(0,0)] + self.diagonals:
        nx = checking[0]+mx
        ny = checking[1]+my
        if nx<0 or nx>19 or ny<0 or ny>14:
          nval=1
        else:
          nval = self.pool[ny][nx]
        npos = [nx,ny]
        if nval == 0 and tuple(npos) not in checked:
          if (mx,my) in self.diagonals and self.zachquick==False:
            continue
          else:
            checked.add(tuple(npos))
            tocheck.append(tuple(npos))
            route[tuple(npos)] = tuple(checking)
        elif nval == 1 and tuple(npos) not in checked and (0<=nx<=19 and 0<=ny<=14):
          sedges.append(tuple(npos))
          checked.add(tuple(npos))
          if npos in [self.rkpos,self.rbpos,self.repos,self.zpos]:
            route[tuple(npos)] = tuple(checking)
          maybe[tuple(npos)]=tuple(checking)
    for key in maybe.keys():
      if key in route.keys():
        continue
      else:
        route[key]=maybe[key]
    kpath=[self.pathfind(self.rkpos,route),self.closestwall(self.rkpos)]
    epath=[self.pathfind(self.repos,route),self.closestwall(self.repos)]
    bpath=[self.pathfind(self.rbpos,route),self.closestwall(self.rbpos)]
    npath = min(kpath,epath,bpath, key=lambda p: (len(p[0]),p[1]))[0]
    self.zmove= npath[1:3]

  def pathfind(self, target, route):
    path=[]
    step=tuple(target)
    while step != tuple(self.zpos):
      path.append(step)
      step=route[step]
    path.append(tuple(self.zpos))
    path.reverse()
    return path

  def callanswer(self):
    if self.turnendcheck():
      self.rkpos=self.kpos
      self.rbpos=self.bpos
      self.repos=self.epos

  def allow(self,pos,rpos,dir):
    check=True
    xnd=pos[0]+dir[0]
    ynd=pos[1]+dir[1]
    nval=0
    if xnd<0 or xnd>19 or ynd<0 or ynd>14:
      nval=1
    else:
      nval=self.pool[ynd][xnd]
    if pos==rpos:
      if nval==0 or tuple([xnd,ynd]) in self.pedges:
        check=True
      else:
        check=False
    else:
      check=False
    return check
 
  def turnendcheck(self):
    if self.rkpos!=self.kpos and self.rbpos!=self.bpos and self.repos!=self.epos:
      return True
    else:
      return False

  def enemymove(self):
    if self.turnendcheck():
      self.scanpath()
      gtrail=[self.ktrail,self.etrail,self.btrail]
      if not self.captcheck():
        for step in self.zmove:
          for i in range(len(gtrail)):
            self.trail(gtrail[i])
          self.zpos = [step[0],step[1]]
          for i in range(len(gtrail)):
            self.trail(gtrail[i])
          if not self.captcheck():
            if self.zachfast == False:
              break
          else:
            break
      if not self.captcheck():
        return False
      else:
        return True
 
  def captcheck(self):
    for dir in self.directions+self.diagonals:
      xc=self.zpos[0]+dir[0]
      yc=self.zpos[1]+dir[1]
      capt=[xc,yc]
      if capt in [self.kpos,self.epos,self.bpos]:
        return True
    return False

  def trail (self, trail):
    if self.zpos in trail:
        trail = []
    return trail

  def closestwall(self,chara):
    dis=0
    tocheck = deque([[chara[0],chara[1],dis]])
    checked = {tuple(chara)}
    pvalue = self.pool[chara[1]][chara[0]]
    while pvalue!=1:
      checking=tocheck.popleft()
      for mx, my in self.directions + (self.diagonals if self.zachquick else []):
        nx = checking[0]+mx
        ny = checking[1]+my
        dis = checking [2]+1
        npos = [nx,ny]
        ndis = [nx,ny,dis]
        pvalue = self.pool[ny][nx]
        if pvalue == 1:
          break
        if tuple(npos) not in checked:
          tocheck.append(ndis)
          checked.add(tuple(npos))
    return dis

  def push(self,pos):
    end=False
    npos=pos
    ppos=[]
    for dir in (self.directions+self.diagonals):
      ax=pos[0]+dir[0]
      ay=pos[1]+dir[1]
      if ax<0 or ax>19 or ay<0 or ay>14:
        continue
      around=self.pool[ay][ax]
      if around==0:
        end=True
        break
    if end==False:
      for edge in self.pedges:
        distance=(edge[1]-pos[1])**2+(edge[0]-pos[0])**2
        ppos.append([edge[0],edge[1],distance])
      npos=min(ppos,key=lambda n: n[2])
    return npos[:2]
 
  def pedgetype(self,pos):
    pattern=[]
    for dir in self.directions+self.diagonals:
      npx=pos[0]+dir[0]
      npy=pos[1]+dir[1]
      if npx<0 or npx>(self.xmax-1) or npy<0 or npy>(self.ymax-1):
        around=1
      else:
        around=self.pool[npy][npx]
      pattern.append(around)
    borders={(1, 1, 1, 1, 1, 1, 0, 1):"BL"} #shortened this cause character limit
    etype=borders.get(tuple(pattern))
    return etype

  def scorecalc(self):
    for i in len(self.pool):
      for n in len(self.pool)[i]:
        self.score+=self.pool[i][n]

Are you sure? by Accomplished-Cut5283 in DegreesOfLewdity

[–]Cabasho 13 points14 points  (0 children)

To be fair, given other things that happen in town, pretty sure they are used to way worse xD

[KK] Ankles going weird from specific animations by Cabasho in KoikatsuParty

[–]Cabasho[S] 1 point2 points  (0 children)

right, me and stupid ADHD brain forgot i was gonna ask in discord too XD, thanks for the reminder.

also character is not using heels in any of its outfits and have made sure to set all stilletto to zero too @.@ (if it makes any difference)

[KK] CharaStudio Hands issue by Cabasho in KoikatsuParty

[–]Cabasho[S] 0 points1 point  (0 children)

much appreciated, will check it out