Ren'Py Sexbot Restoration 2124 [v0.14.1] [squirrel24]

4.30 star(s) 17 Votes

squirrel24

Active Member
Game Developer
Mar 12, 2021
667
746
217
Wowsers, this it a lot of QOL changes. Awesome, thanks as always for the good work. Won't have time in the next few days but willing to test after the weekend if you still need info.
Thanks, kind words are always appreciated. Feedback welcome any time, no hurry.
 

squirrel24

Active Member
Game Developer
Mar 12, 2021
667
746
217
can u add small penis character creation
Sorry, the MC will never change and the bots in the game will not have alternate pictures to support customization. These things could be put into a bot mod if you're interested and have the images and/or videos for it. They aren't hard to make.
 

Leezan

Newbie
Apr 14, 2021
46
8
115
Game crashes on day one when trying to work with 4 AP. only other thing I did was workout.
It doesn't crash if I don't workout or workout twice.
 

Hermenegild

Active Member
Sep 18, 2017
600
358
285
squirrel24, a small, non-crashing bug for you with 0.12.5. When training sex for a male bot, a female one is involved as well. However, after the training, the male's training results are repeated twice, and the female's are not mentioned. See the screenshot below.
You don't have permission to view the spoiler content. Log in or register now.
 

AkiranGaming

Well-Known Member
Jan 4, 2024
1,106
733
199
Need help. The thugs keep asking bot every week. How do I stop them?
The mob protection quest is at least a few weeks, you will eventually get the option to build a special bot, so keep an eye out for it, but if you can't make it right away it will cycle through a couple bots and let you try again until you do.
 

jacob bond

Member
Feb 23, 2018
152
32
216
help please
Code:
I'm sorry, but an uncaught exception occurred.

While running game code:
  File "renpy/common/000statements.rpy", line 569, in execute_call_screen
    store._return = renpy.call_screen(name, *args, **kwargs)
  File "game/modules/0005_core/screens/image_hook.rpy", line 34, in render
MemoryError: 

-- Full Traceback ------------------------------------------------------------

Full traceback:
  File "renpy/bootstrap.py", line 331, in bootstrap
    renpy.main.main()
  File "renpy/main.py", line 662, in main
    run(restart)
  File "renpy/main.py", line 148, in run
    renpy.execution.run_context(True)
  File "renpy/execution.py", line 922, in run_context
    context.run()
  File "modules/0005_core/core/main_loop.rpyc", line 80, in script call
  File "modules/0005_core/core/main_loop.rpyc", line 19, in script
  File "modules/0005_core/core/main_loop.rpyc", line 80, in script call
  File "modules/0005_core/core/main_loop.rpyc", line 19, in script
  File "renpy/ast.py", line 2015, in execute
    self.call("execute")
  File "renpy/ast.py", line 2003, in call
    return renpy.statements.call(method, parsed, *args, **kwargs)
  File "renpy/statements.py", line 278, in call
    return method(parsed, *args, **kwargs)
  File "renpy/common/000statements.rpy", line 569, in execute_call_screen
    store._return = renpy.call_screen(name, *args, **kwargs)
  File "renpy/exports.py", line 3136, in call_screen
    rv = renpy.ui.interact(mouse="screen", type="screen", roll_forward=roll_forward)
  File "renpy/ui.py", line 298, in interact
    rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
  File "renpy/display/core.py", line 3325, in interact
    repeat, rv = self.interact_core(preloads=preloads, trans_pause=trans_pause, pause=pause, pause_start=pause_start, **kwargs)
  File "renpy/display/core.py", line 3839, in interact_core
    self.draw_screen(root_widget, fullscreen_video, (not fullscreen_video) or video_frame_drawn)
  File "renpy/display/core.py", line 2565, in draw_screen
    renpy.config.screen_height,
  File "render.pyx", line 492, in renpy.display.render.render_screen
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 826, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/transition.py", line 368, in render
    top = render(self.new_widget, width, height, st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 826, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 826, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/screen.py", line 688, in render
    child = renpy.display.render.render(self.child, w, h, st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 826, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 987, in render
    surf = render(d, rw, height - y, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1768, in render
    cwidth, cheight = sizeit('c', width, height, 0, 0)
  File "renpy/display/layout.py", line 1765, in sizeit
    rend = renpy.display.render.render_for_size(pos_d[pos], width, height, st, at)
  File "render.pyx", line 315, in renpy.display.render.render_for_size
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 826, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1264, in render
    st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1768, in render
    cwidth, cheight = sizeit('c', width, height, 0, 0)
  File "renpy/display/layout.py", line 1765, in sizeit
    rend = renpy.display.render.render_for_size(pos_d[pos], width, height, st, at)
  File "render.pyx", line 315, in renpy.display.render.render_for_size
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/viewport.py", line 257, in render
    surf = renpy.display.render.render(self.child, child_width, child_height, st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1264, in render
    st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1029, in render
    surf = render(d, width - x, rh, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1029, in render
    surf = render(d, width - x, rh, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1771, in render
    left, cheight = sizeit('l', width, cheight, left, cheight)
  File "renpy/display/layout.py", line 1765, in sizeit
    rend = renpy.display.render.render_for_size(pos_d[pos], width, height, st, at)
  File "render.pyx", line 315, in renpy.display.render.render_for_size
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1029, in render
    surf = render(d, width - x, rh, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1264, in render
    st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "game/modules/0005_core/screens/image_hook.rpy", line 34, in render
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/transform.py", line 733, in render
    return transform_render(self, width, height, st, at)
  File "accelerator.pyx", line 187, in renpy.display.accelerator.transform_render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/image.py", line 501, in render
    return wrap_render(self.target, width, height, st, at)
  File "renpy/display/image.py", line 307, in wrap_render
    rend = render(child, w, h, st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/im.py", line 625, in render
    return cache.get(self, render=True)
  File "renpy/display/im.py", line 287, in get
    surf = image.load()
  File "renpy/game.py", line 119, in __exit__
    renpy.game.exception_info = self.s % self.args
 

MiltonPowers

Twins Basil! Twins!
Donor
Jr. Uploader
Jul 26, 2023
17,744
44,397
922
The download throws up a malware/virus alert (Vikingfile)
Chrome and Firefox have VikingFile listed as a 'bad' place for people to download from. They will give you corrupted / dangerous warning no matter what. This is from past experiences and they still have marked them as safe sites.

As long as you are downloading the actual file and not something from a popup, the file should be fine. Run it through a virus protection or separate drive install if you are concerned, but the warning from Chrome/Firefox is automatic, it is not based on anything it has detected in the file.
 
  • Like
Reactions: I-love-boobies

squirrel24

Active Member
Game Developer
Mar 12, 2021
667
746
217
squirrel24, a small, non-crashing bug for you with 0.12.5. When training sex for a male bot, a female one is involved as well. However, after the training, the male's training results are repeated twice, and the female's are not mentioned. See the screenshot below.
You don't have permission to view the spoiler content. Log in or register now.
Sorry, I'll look into it.
 

squirrel24

Active Member
Game Developer
Mar 12, 2021
667
746
217
help please
Code:
I'm sorry, but an uncaught exception occurred.

While running game code:
  File "renpy/common/000statements.rpy", line 569, in execute_call_screen
    store._return = renpy.call_screen(name, *args, **kwargs)
  File "game/modules/0005_core/screens/image_hook.rpy", line 34, in render
MemoryError: 

-- Full Traceback ------------------------------------------------------------

Full traceback:
  File "renpy/bootstrap.py", line 331, in bootstrap
    renpy.main.main()
  File "renpy/main.py", line 662, in main
    run(restart)
  File "renpy/main.py", line 148, in run
    renpy.execution.run_context(True)
  File "renpy/execution.py", line 922, in run_context
    context.run()
  File "modules/0005_core/core/main_loop.rpyc", line 80, in script call
  File "modules/0005_core/core/main_loop.rpyc", line 19, in script
  File "modules/0005_core/core/main_loop.rpyc", line 80, in script call
  File "modules/0005_core/core/main_loop.rpyc", line 19, in script
  File "renpy/ast.py", line 2015, in execute
    self.call("execute")
  File "renpy/ast.py", line 2003, in call
    return renpy.statements.call(method, parsed, *args, **kwargs)
  File "renpy/statements.py", line 278, in call
    return method(parsed, *args, **kwargs)
  File "renpy/common/000statements.rpy", line 569, in execute_call_screen
    store._return = renpy.call_screen(name, *args, **kwargs)
  File "renpy/exports.py", line 3136, in call_screen
    rv = renpy.ui.interact(mouse="screen", type="screen", roll_forward=roll_forward)
  File "renpy/ui.py", line 298, in interact
    rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
  File "renpy/display/core.py", line 3325, in interact
    repeat, rv = self.interact_core(preloads=preloads, trans_pause=trans_pause, pause=pause, pause_start=pause_start, **kwargs)
  File "renpy/display/core.py", line 3839, in interact_core
    self.draw_screen(root_widget, fullscreen_video, (not fullscreen_video) or video_frame_drawn)
  File "renpy/display/core.py", line 2565, in draw_screen
    renpy.config.screen_height,
  File "render.pyx", line 492, in renpy.display.render.render_screen
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 826, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/transition.py", line 368, in render
    top = render(self.new_widget, width, height, st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 826, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 826, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/screen.py", line 688, in render
    child = renpy.display.render.render(self.child, w, h, st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 826, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 987, in render
    surf = render(d, rw, height - y, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1768, in render
    cwidth, cheight = sizeit('c', width, height, 0, 0)
  File "renpy/display/layout.py", line 1765, in sizeit
    rend = renpy.display.render.render_for_size(pos_d[pos], width, height, st, at)
  File "render.pyx", line 315, in renpy.display.render.render_for_size
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 826, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1264, in render
    st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1768, in render
    cwidth, cheight = sizeit('c', width, height, 0, 0)
  File "renpy/display/layout.py", line 1765, in sizeit
    rend = renpy.display.render.render_for_size(pos_d[pos], width, height, st, at)
  File "render.pyx", line 315, in renpy.display.render.render_for_size
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/viewport.py", line 257, in render
    surf = renpy.display.render.render(self.child, child_width, child_height, st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1264, in render
    st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1029, in render
    surf = render(d, width - x, rh, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1029, in render
    surf = render(d, width - x, rh, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1771, in render
    left, cheight = sizeit('l', width, cheight, left, cheight)
  File "renpy/display/layout.py", line 1765, in sizeit
    rend = renpy.display.render.render_for_size(pos_d[pos], width, height, st, at)
  File "render.pyx", line 315, in renpy.display.render.render_for_size
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1029, in render
    surf = render(d, width - x, rh, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/layout.py", line 1264, in render
    st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "game/modules/0005_core/screens/image_hook.rpy", line 34, in render
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/transform.py", line 733, in render
    return transform_render(self, width, height, st, at)
  File "accelerator.pyx", line 187, in renpy.display.accelerator.transform_render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/image.py", line 501, in render
    return wrap_render(self.target, width, height, st, at)
  File "renpy/display/image.py", line 307, in wrap_render
    rend = render(child, w, h, st, at)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 263, in renpy.display.render.render
  File "renpy/display/im.py", line 625, in render
    return cache.get(self, render=True)
  File "renpy/display/im.py", line 287, in get
    surf = image.load()
  File "renpy/game.py", line 119, in __exit__
    renpy.game.exception_info = self.s % self.args
This is a memory error, I cannot help with this. Sorry.
 

squirrel24

Active Member
Game Developer
Mar 12, 2021
667
746
217
Sorry everyone, more bugs than I expected. I'll be home on Tuesday to work on fixes.
 
  • Like
Reactions: TValia

Milf.lova

New Member
Aug 16, 2024
9
6
81
The mob protection quest is at least a few weeks, you will eventually get the option to build a special bot, so keep an eye out for it, but if you can't make it right away it will cycle through a couple bots and let you try again until you do.
What does special bot mean? Does that mean sabotage bot? I gave them S rate bot with A social and sex skill, but they kept asking for another and it's been weeks now. I'm finding it's hard to get bot parts cause they keep asking me at least B+ parts
 

Evangelion-01

Devoted Member
Apr 12, 2018
11,601
7,937
906
What does special bot mean? Does that mean sabotage bot? I gave them S rate bot with A social and sex skill, but they kept asking for another and it's been weeks now. I'm finding it's hard to get bot parts cause they keep asking me at least B+ parts
A Luxury bot of Rank A or higher with fitting training in Social
Once you get the Quest a young boy will visit the store and sell you a fitting bot, which needs to have ALL parts exchanged
 

Bob69

Uploading the World
Uploader
Donor
Compressor
Mar 2, 2019
22,860
307,346
998
Sexbot Restoration 2124 [v0.12.5] [squirrel24] - Compressed

Win/Linux [317 MB]
- - - -

Mac [283 MB]
- - - -

You don't have permission to view the spoiler content. Log in or register now.
 
4.30 star(s) 17 Votes