Indulgences, Version 0.2 Out Now (Version 0.3 Early Access for Patrons)!

Much the same to report here. Absolutely amazing base, with stellar art, but the glitches threw me off a little. Every second item I fed the rich girl caused an error, plus several characters had fullness meters that reset to 0 every time (which admittedly made life easier). On top of that, the sequence of cutscenes felt a bit odd. The girls all seemed to know each other well but I have no idea how, and in general the story aspects seemed kinda unclear. Also, with the rich girl and the WcDonalds girl, I kept having to redo the intro cutscene before they hit stage 2.

To be clear though, this is already a strong start, and I see incredible potential for your work so please keep it up!

1 Like

I have to say not bad, the art is very and there is a fun little loop in this of finding what food the girls like and as your Relationship they can eat more kind of food but the game have A bug I was playing the office mini game and as I finish the game all my progress reset but if that is fix and add some content down the road this game will amazing.

1 Like

I really liked this game, despite the errors that come in a playthrough (see below). You have a solid foundation and I am very excited to see where you take this.

I love the sprites, and am seriously looking forward to more of this. Exploring their contrasting personalities is such a pleasure to read, and your descriptions of scenes “flesh-out” the characters and their environments.

My bug report/thoughts/tracebacks
  1. FYI, the game tries to call a missing event hazel_mall12.

  2. Bug found for every 2nd feeding:
    So to give a little more info, let’s say you feed Sophia, then you head over to Rebecca and feed her, an error will pop up. Ignoring this error will send you back to Sophia, though the game doesn’t lose the fact you fed Sophia and Rebecca and will still count for their calories, etc.
    This bug persists through a New Day. Ex: if you feed Rebecca then the day ends, then feed Hazel in the new day, the error pops up again and ignoring it will send you back to Rebecca (though the food to Rebecca and Hazel again is still recorded as expected).

For testing purposes, I completed a run where I only fed Hazel and didn’t go to the mall or gym. The error occurred again, and the traceback is below:

I'm sorry, but an uncaught exception occurred.

While running game code:
  File "game/hazel.rpy", line 367, in script
    $ feed_hazel_from_inventory(choice)
  File "game/hazel.rpy", line 367, in <module>
    $ feed_hazel_from_inventory(choice)
  File "game/inventory.rpy", line 88, in feed_hazel_from_inventory
    feed_character_from_inventory("Hazel", hazel_current_capacity, hazel_relation_capacity, item, feed_hazel)
  File "game/inventory.rpy", line 80, in feed_character_from_inventory
    feed_function(item["calories"], item["capacity_increase"], adjusted_affection, item["eating_time"])
  File "game/hazel.rpy", line 198, in feed_hazel
    renpy.call_in_new_context("feed_hazel")
  File "game/hazel.rpy", line 367, in script
    $ feed_hazel_from_inventory(choice)
  File "game/hazel.rpy", line 367, in script
    $ feed_hazel_from_inventory(choice)
  File "game/hazel.rpy", line 367, in <module>
    $ feed_hazel_from_inventory(choice)
  File "game/inventory.rpy", line 88, in feed_hazel_from_inventory
    feed_character_from_inventory("Hazel", hazel_current_capacity, hazel_relation_capacity, item, feed_hazel)
  File "game/inventory.rpy", line 80, in feed_character_from_inventory
    feed_function(item["calories"], item["capacity_increase"], adjusted_affection, item["eating_time"])
  File "game/hazel.rpy", line 198, in feed_hazel
    renpy.call_in_new_context("feed_hazel")
  File "game/hazel.rpy", line 360, in script
    $ choice = renpy.display_menu([(item["name"], item) for item in inventory_items] + [("Back", "back")])
  File "game/hazel.rpy", line 360, in script
    $ choice = renpy.display_menu([(item["name"], item) for item in inventory_items] + [("Back", "back")])
  File "game/hazel.rpy", line 360, in <module>
    $ choice = renpy.display_menu([(item["name"], item) for item in inventory_items] + [("Back", "back")])
RecursionError: maximum recursion depth exceeded while calling a Python object

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

Full traceback:
  File "game/hazel.rpy", line 367, in script
    $ feed_hazel_from_inventory(choice)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/ast.py", line 1111, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/python.py", line 1049, in py_exec_bytecode
    exec(bytecode, globals, locals)
  File "game/hazel.rpy", line 367, in <module>
    $ feed_hazel_from_inventory(choice)
  File "game/inventory.rpy", line 88, in feed_hazel_from_inventory
    feed_character_from_inventory("Hazel", hazel_current_capacity, hazel_relation_capacity, item, feed_hazel)
  File "game/inventory.rpy", line 80, in feed_character_from_inventory
    feed_function(item["calories"], item["capacity_increase"], adjusted_affection, item["eating_time"])
  File "game/hazel.rpy", line 198, in feed_hazel
    renpy.call_in_new_context("feed_hazel")
  File "./Indulgences.app/Contents/Resources/autorun/renpy/game.py", line 346, in call_in_new_context
    return renpy.execution.run_context(False)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/execution.py", line 938, in run_context
    context.run()
  File "game/hazel.rpy", line 367, in script
    $ feed_hazel_from_inventory(choice)
  File "/home/tom/ab/renpy-build/tmp/install.linux-x86_64/lib/python3.9/site-packages/future/utils/__init__.py", line 441, in raise_
  File "game/hazel.rpy", line 367, in script
    $ feed_hazel_from_inventory(choice)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/ast.py", line 1111, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/python.py", line 1049, in py_exec_bytecode
    exec(bytecode, globals, locals)
  File "game/hazel.rpy", line 367, in <module>
    $ feed_hazel_from_inventory(choice)
  File "game/inventory.rpy", line 88, in feed_hazel_from_inventory
    feed_character_from_inventory("Hazel", hazel_current_capacity, hazel_relation_capacity, item, feed_hazel)
  File "game/inventory.rpy", line 80, in feed_character_from_inventory
    feed_function(item["calories"], item["capacity_increase"], adjusted_affection, item["eating_time"])
  File "game/hazel.rpy", line 198, in feed_hazel
    renpy.call_in_new_context("feed_hazel")
  File "./Indulgences.app/Contents/Resources/autorun/renpy/game.py", line 346, in call_in_new_context
    return renpy.execution.run_context(False)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/execution.py", line 938, in run_context
    context.run()
  File "game/hazel.rpy", line 360, in script
    $ choice = renpy.display_menu([(item["name"], item) for item in inventory_items] + [("Back", "back")])
  File "/home/tom/ab/renpy-build/tmp/install.linux-x86_64/lib/python3.9/site-packages/future/utils/__init__.py", line 441, in raise_
  File "game/hazel.rpy", line 360, in script
    $ choice = renpy.display_menu([(item["name"], item) for item in inventory_items] + [("Back", "back")])
  File "./Indulgences.app/Contents/Resources/autorun/renpy/ast.py", line 1111, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/python.py", line 1049, in py_exec_bytecode
    exec(bytecode, globals, locals)
  File "game/hazel.rpy", line 360, in <module>
    $ choice = renpy.display_menu([(item["name"], item) for item in inventory_items] + [("Back", "back")])
  File "./Indulgences.app/Contents/Resources/autorun/renpy/exports.py", line 1250, in display_menu
    rv = renpy.ui.interact(mouse='menu', type=type, roll_forward=roll_forward)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/ui.py", line 299, in interact
    rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/core.py", line 3376, in interact
    repeat, rv = self.interact_core(preloads=preloads, trans_pause=trans_pause, pause=pause, pause_start=pause_start, **kwargs) # type: ignore
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/core.py", line 3905, in interact_core
    self.draw_screen(root_widget, fullscreen_video, (not fullscreen_video) or video_frame_drawn)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/core.py", line 2601, in draw_screen
    surftree = renpy.display.render.render_screen(
  File "render.pyx", line 495, in renpy.display.render.render_screen
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 884, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 884, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 884, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/screen.py", line 704, 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 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 884, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/transform.py", line 747, 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 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 1334, in render
    surf = render(child,
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 1105, in render
    surf = render(d, width - x, rh, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/text/text.py", line 2111, in render
    layout = Layout(self, width, height, renders, splits_from=virtual_layout)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/text/text.py", line 873, in __init__
    tex = renpy.display.draw.load_texture(surf, properties={ "mipmap" : renpy.config.mipmap_text if (style.mipmap is None) else style.mipmap })
  File "gl2draw.pyx", line 736, in renpy.gl2.gl2draw.GL2Draw.load_texture
  File "gl2texture.pyx", line 185, in renpy.gl2.gl2texture.TextureLoader.load_surface
  File "gl2texture.pyx", line 113, in renpy.gl2.gl2texture.TextureLoader.load_one_surface
  File "gl2texture.pyx", line 288, in renpy.gl2.gl2texture.GLTexture.from_surface
  File "gl2mesh2.pyx", line 122, in renpy.gl2.gl2mesh2.Mesh2.texture_rectangle
RecursionError: maximum recursion depth exceeded while calling a Python object

macOS
Ren'Py 8.0.0.22062402
Indulgences 0.11
  1. Regarding saves not working:
    I do not know how since I’m not very proficient in Ren’Py, but it almost seems like the game is running in a single “instance” if that makes sense. Normally Ren’Py allows you to rollback to the previous dialogue, but this seems to be halted the moment you feed any girl for the first time and failing to update the game state after any additional progress is made. Pressing the “Back” button in the Ren’Py UI will revert you back to this moment, which for probably 99% of people is the first day. Loading a save from after this point will also revert you back to this moment.

Additionally, after a certain point the game just doesn’t allow you to open the Ren’Py menu? I’ve attached a report log below. This error popped up for me in the fast food main menu, though it occurs everywhere when trying to open the Preferences menu. The only difference is this line in the traceback:
File “game/fast_food.rpy”, line 73, in script
menu:
Done from home:
File “game/script.rpy”, line 108, in script
menu:

I’m not sure exactly how to fix the infinite recursion loop it seems to be stuck in, but I thought a traceback might be helpful for you. Only edits I’ve made is to replace personally identifying filenames with “./” but thought it was worth mentioning.

I'm sorry, but an uncaught exception occurred.

While running game code:
  File "game/reb.rpy", line 314, in script call
    call expression reb_state from _call_expression
  File "game/reb.rpy", line 314, in script call
    call expression reb_state from _call_expression
  File "game/sophia.rpy", line 317, in script call
    call expression sophia_state from _call_expression_1
  File "game/hazel.rpy", line 218, in script call
    call hazel21 from _call_hazel21
  File "game/sophia.rpy", line 317, in script call
    call expression sophia_state from _call_expression_1
  File "game/sophia.rpy", line 317, in script call
    call expression sophia_state from _call_expression_1
  File "game/sophia.rpy", line 317, in script call
    call expression sophia_state from _call_expression_1
  [Previous line repeated 4 more times]
  File "game/fast_food.rpy", line 73, in script
    menu:
  File "renpy/common/00action_menu.rpy", line 110, in __call__
    renpy.call_in_new_context("_game_menu", *self.args, _game_menu_screen=screen, **self.kwargs)
  File "renpy/common/00gamemenu.rpy", line 170, in script
    $ ui.interact()
  File "renpy/common/00gamemenu.rpy", line 170, in script
    $ ui.interact()
  File "renpy/common/00gamemenu.rpy", line 170, in <module>
    $ ui.interact()
RecursionError: maximum recursion depth exceeded while calling a Python object

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

Full traceback:
  File "game/reb.rpy", line 314, in script call
    call expression reb_state from _call_expression
  File "game/reb.rpy", line 314, in script call
    call expression reb_state from _call_expression
  File "game/sophia.rpy", line 317, in script call
    call expression sophia_state from _call_expression_1
  File "game/hazel.rpy", line 218, in script call
    call hazel21 from _call_hazel21
  File "game/sophia.rpy", line 317, in script call
    call expression sophia_state from _call_expression_1
  File "game/sophia.rpy", line 317, in script call
    call expression sophia_state from _call_expression_1
  File "game/sophia.rpy", line 317, in script call
    call expression sophia_state from _call_expression_1
  [Previous line repeated 4 more times]
  File "game/fast_food.rpy", line 73, in script
    menu:
  File "./Indulgences.app/Contents/Resources/autorun/renpy/ast.py", line 1883, in execute
    choice = renpy.exports.menu(choices, self.set, args, kwargs, item_arguments)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/exports.py", line 1010, in menu
    rv = renpy.store.menu(new_items)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/exports.py", line 1250, in display_menu
    rv = renpy.ui.interact(mouse='menu', type=type, roll_forward=roll_forward)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/ui.py", line 299, in interact
    rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/core.py", line 3376, in interact
    repeat, rv = self.interact_core(preloads=preloads, trans_pause=trans_pause, pause=pause, pause_start=pause_start, **kwargs) # type: ignore
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/core.py", line 4251, in interact_core
    rv = root_widget.event(ev, x, y, 0)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 1175, in event
    rv = i.event(ev, x - xo, y - yo, cst)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 1175, in event
    rv = i.event(ev, x - xo, y - yo, cst)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 1175, in event
    rv = i.event(ev, x - xo, y - yo, cst)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/screen.py", line 743, in event
    rv = self.child.event(ev, x, y, st)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 1175, in event
    rv = i.event(ev, x - xo, y - yo, cst)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 1175, in event
    rv = i.event(ev, x - xo, y - yo, cst)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/behavior.py", line 1054, in event
    return handle_click(self.clicked)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/behavior.py", line 989, in handle_click
    rv = run(action)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/behavior.py", line 329, in run
    return action(*args, **kwargs)
  File "renpy/common/00action_menu.rpy", line 110, in __call__
    renpy.call_in_new_context("_game_menu", *self.args, _game_menu_screen=screen, **self.kwargs)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/game.py", line 346, in call_in_new_context
    return renpy.execution.run_context(False)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/execution.py", line 938, in run_context
    context.run()
  File "renpy/common/00gamemenu.rpy", line 170, in script
    $ ui.interact()
  File "/home/tom/ab/renpy-build/tmp/install.linux-x86_64/lib/python3.9/site-packages/future/utils/__init__.py", line 441, in raise_
  File "renpy/common/00gamemenu.rpy", line 170, in script
    $ ui.interact()
  File "./Indulgences.app/Contents/Resources/autorun/renpy/ast.py", line 1111, in execute
    renpy.python.py_exec_bytecode(self.code.bytecode, self.hide, store=self.store)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/python.py", line 1049, in py_exec_bytecode
    exec(bytecode, globals, locals)
  File "renpy/common/00gamemenu.rpy", line 170, in <module>
    $ ui.interact()
  File "./Indulgences.app/Contents/Resources/autorun/renpy/ui.py", line 299, in interact
    rv = renpy.game.interface.interact(roll_forward=roll_forward, **kwargs)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/core.py", line 3376, in interact
    repeat, rv = self.interact_core(preloads=preloads, trans_pause=trans_pause, pause=pause, pause_start=pause_start, **kwargs) # type: ignore
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/core.py", line 3905, in interact_core
    self.draw_screen(root_widget, fullscreen_video, (not fullscreen_video) or video_frame_drawn)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/core.py", line 2601, in draw_screen
    surftree = renpy.display.render.render_screen(
  File "render.pyx", line 495, in renpy.display.render.render_screen
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 884, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/transition.py", line 378, 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 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 884, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 884, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/screen.py", line 704, 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 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 884, in render
    surf = render(child, width, height, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 1334, in render
    surf = render(child,
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 1060, in render
    surf = render(d, rw, height - y, cst, cat)
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 1334, in render
    surf = render(child,
  File "render.pyx", line 170, in renpy.display.render.render
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 1847, in render
    cwidth, cheight = sizeit('c', width, height, 0, 0)
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/layout.py", line 1844, in sizeit
    rend = renpy.display.render.render_for_size(pos_d[pos], width, height, st, at)
  File "render.pyx", line 318, in renpy.display.render.render_for_size
  File "render.pyx", line 266, in renpy.display.render.render
  File "./Indulgences.app/Contents/Resources/autorun/renpy/display/viewport.py", line 256, 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 212, in renpy.display.render.render
RecursionError: maximum recursion depth exceeded while calling a Python object

macOS
Ren'Py 8.0.0.22062402
Indulgences 0.11
1 Like

Thanks for all the feedback guys, I have pushed another update that fixes both save files and the calendar system. Both were very easy fixes thanks to the info you guys provided so hopefully now the game should be more playable. My dumbass never really tested the compiled version and just spent all the time in the weeds not playing thorough holistically so I let issues like this absolutely ruin the first experience for everyone. Sorry, but I’ll be sure to make the next version better.

14 Likes

No worries at all, happens to everyone and I promise you that we’re all still very excited for the game. Thanks for updating it so quickly!

1 Like

Not to ruin things, but there is one event hook missing, leading to a CTD; reb_mall12; I’ve commented it out in my local files for now, but hopefully that’s the only one left to clean up.

on it, I’ll update the itch right now

2 Likes

Also happened with Hazel_mall12 just now, so might be worth double-checking the other events. This is what I get for pushing their limits so early. xD

1 Like

When offered the first choice to sleep or pass time are you supposed to just actually click map instead? If yes, maybe tell the player that?

edit: Alternatively you could force dump to the map (I could help show you code for that if needed, sort of depends how you want to go.)

1 Like

I played for a bit and really enjoyed what’s already here. The sprite work is amazing and the systems even in their current state look promising. If I had to nitpick something, I think the difference between Rebecca’s second and third stage is too big a jump in weight visually compared to the other two girls. And the tetris minigame should have a visible timer, but that’s it really.

I’m really excited to see what direction you end up taking this.

1 Like

I think the time change when you feed a girl is too much, I cant get Rebecca to her max capacity without the day ending. Also I can’t get Sophia over her calorie max without her capacity maxing out.

2 Likes

I think this is a good start! It seems to be very well done for a first version. However, there are quite a few bugs visible.

  • When I tap the map outside home, the event and UI overlaps.
  • Some Events happen even if conditions are not met. (For example, Hazel’s mall event that mentions ''her growing frame" appears even though I haven’t met her or fed her).
2 Likes

Definitely much more difficult to surpass her calorie max than the other girls.

I had luck spamming her with cappuccinos all day every day until she hits stage 2, then it’s a lot easier. Their fullness/capacity will decrease by so much per hour passed, so you may need to fill her up first thing, leave her for a bit, then return at the end of the day to fill her again. It’s a slow process… Maybe someone else has a better way of getting her to stage 2 but this does work.

It’s a really neat little game so far, with beautiful sprite-work and interesting writing. They way each character has a favourite food they will eat more of, and disliked food they will eat less, is neat. With that said, I can’t help but pity the girl that has to drink 30 cups of coffee per day xD.

Though there are some issues currently present:

  • Time per Food is a bit too high, to the point that it’s both heavily unrealistic (1 shake taking several hours to drink), as well as making it impossible to see certain overstuffed sprites, since the day will end beforehand.
  • Character dialogue and descriptions for stage 1 say they gained weight, even though it’s stage 1, where all characters start at and where no weight has been gained yet.
  • Stuffing events do not affect fullness or calories at all. Neither do the sprites update to reflect the descriptions there. Well, fullness/calories in general only increase if the player feeds them, but that conflicts with the scenario and the descriptions, in which the characters are stated to eat independently. That dissonance is a bit …
  • In general the events seem to be exclusively for flavour so far, with no impact on gameplay. That’s not an issue by itself, though it does not match the contents. You’d expect an event where a character exercises to either reduce their weight or increase their needed calories for that day, as an example.
  • In a similar vein, character food preferences do not seem to change at all, as even if an events states that a character likes burgers, it’s still registered as a neutral/disapproved food.
  • The Map function can interrupt any event. This is a bit of an issue, since it means you can use it to skip anything currently happening, with the intro-events on each location repeating. I think travel per map should be a top-menu option, instead of an interrupt. Or at least block it during events/dialogue to avoid the play skipping it.
  • UI-Numbers are not sanitized, so you can get weight numbers like “46.233333333333333334”.

Overall though it’s a really promising start. I’m wondering a bit about the general gameplay loop, since so far it’s just minigame for work once a while, then buy food, feed girl, sleep, repeat. I assume you will implement more things to do per day, and more variations to this schedule over time, like the stated university.

Thank you for making this game.

5 Likes

Yeah that was my intention, but in the future version I think I will just add the map to the top of the home options as that will make stuff more convenient. I appreciate the offer but I think it should not be too hard to implement. I also have a bunch more stuff planned to be accessible at home so hopefully that location will be more interesting in the future.

Noted, I might circle back and rework some sprites as necessary, I intended to have rebecca balloon up at stage 4 (due to not being able to use the machines in the gym anymore) but this would lose it’s effect if she’s too big at stage 3 already. As for a timer on the tetris minigame, that shouldn’t be too hard to implement.

I will look over the systems and make sure the map is only accessible at certain times to avoid this, and the events are kinda scattershot right now, I just made them and kinda threw them in without setting too many prerequisites. In future I intend to make them have more requirements as well as consequences, as currently they don’t have much of an impact on the gameplay.

The numbers in this version are completely placeholder and I actually intend to completely rework the feeding system to make it the main gameplay loop. This would include expanding on liked foods as well as adding variables such as bloating, hydration, capacity expansion, etc. With a bunch of foods that give different stat buffs I think the gamplay will be more interesting and thoughtful

  1. Yep I decided to make values super long because it used to take way too long for a day to end and I have not yet applied the eating speed variable, that should reduce the time it takes to eat food as the girls eat more food.
  2. This is again the lack of requirements for events, I will expand on this soon
  3. Events will affect the game in future patches, I will have to rework the feeding system a bit though as currently it is annoying to implement and that’s why it didn’t make it into the current release
  4. Yeah this is something I intend to add, but the code is already a mess so I want to find a good way to change preferences based on size. if anyone has suggestions I would appreciate it because currently I might just make it an if/else statement that accesses a different dictionary of items
  5. I will definitely remove it during dialogue and hopefully implement a better way to manage what is visible on screen, renpy can be quite confusing with it’s layers sometimes
  6. Easy fix as I already did this with a few values just forgot for weight.

Thanks for the feedback everyone, I am grateful for the reception of the game and will post an update on what my next plans are sometime today.

10 Likes

So here are some of my thoughts:

Launch:

Considering the absolutely horrible state of the original launch I am really happy with how things have turned out. There’s been a lot of great feedback and I’ll be sure to keep it in mind moving forward. Seems like there’s a lot of interest in the project so this bodes well for me to continue working on it going forward.

The Future:

Given the interest in the project I will continue to work on it. The entire progress you guys have seen is me working on this game full time for almost one month, so given more time and the fact that the very general base for the game is complete I can now start moving to the more interesting stuff like new content and art. This means that for the foreseeable future I will be adding a lot more stuff to the game. I’m hoping to have the next version complete by the end of September but this is a very rough estimate. Some immediate plans include the following:

Expanding the feeding gameplay to add depth and strategy to the game:

  • Bloating
  • Capacity increasing foods
  • Calorie dense foods
  • Moods for characters
  • Hunger
  • Eating speed
  • Digestion speed
  • Self control
  • Etc.

Adding about 2 new characters with all their stages

  • Maid
  • Brazilian Miku got me feeling another kinda way right now
  • Idol character
  • Reserved art girl
  • Basically anything you guys wanna see

CGs for events

Make all locations have the ability to invite characters based on affection

Have all locations have unique events for each girl

Adding in the university as a location to make a cohesive location for all girls to meet and get to

know each other better

Possibly adding in player character weight gain and subsequent effects on gameplay

Patreon and Support:

I’ve thought a long time about whether or not to start a patreon but given the current situation I think it is the right call. I just graduated university so I had a lot of time this summer while I was job hunting so I could justify working on this with most of my free time; however, my internship savings are running out so I will have to start focusing more on my career if I cannot find a way to support myself for the time being. That is why I intend to open a Patreon sometime in the near future. Worry not, the updates for the game will continue to be free but I like the method other games employ where supporters get early access, so this may be what I implement in the future. I think for now I plan on making v0.2 completely free on day one but I might make future versions early access to supporters. Some things that I’m thinking of implementing for supporters would be:

  • Devblogs

  • Polls deciding where development time is allocated

  • Early access to art and sprites

  • Polls for new characters/events/locations to be implemented

  • Custom art/comissions

I’m open to any other ideas you guys would want to see from me

TLDR:

I will continue to work on the game, both refining and adding in new content. As well as planning on opening a patreon for those who want to support continued development.

25 Likes

My inventory is full of food no one wants to eat. Is there any way to eat it myself or something?

Thank you for the continued communication - your roadmap seems clear and actionable which is good. Hopefully with the existing systems you’re able to expand on interactions with the ease you expect.

That style of patreon makes sense - I know that I’ve backed a few because of the opportunity to vote on polling to express support for more niche fetishes so that may be something to consider as an avenue for polls.

As for future girls/what I’d be interested in - a super low impulse control & totally in denial party girl would be fun. Outgoing, hyper-confident, and refuses to admit they’re gaining weight (allows for undersized clothes) maybe a belly focused gain due to them having a beer belly & it allows them to play it off as being ‘bloating’ in their denial.

1 Like

I really like this game, the writing is good and the sprites are top tier as well. One bug that I didn’t see mentioned, but that helps see the stuffing levels later, is that when you get warped home to sleep, you can click the map to skip the girls’ capacity level getting reset. This lets you see level 2/3 more easily for now. I guess it’d also make Sophie’s early gains easier, too.

Love this! The pastel pixel art is charming, the characters writing is clear if a little flat, and the WG writing hits the spot! Not decided on the game mechanics yet - given the limit of the day it feels best to focus on one girl at a time, which is fine. Found some weirdness in the text:

Some kind of variable name error

Awesome ff_choice! I’ll get that ready for you.

Thanks for showing me around, Becka.

She spots you almost immediately, and with a sigh, she mall_menus walking towards you.

offering her some relief, but the hazel_weight and roundness of her overfilled belly are evident.

However, her once perfectly tailored outfits are mall_menuing to feel a bit too tight around her hips and thighs.

And while she might be confused now, there’s a part of her that’s mall_menuing to appreciate the extra fullness.