Add-on UserPets

So I'm just starting on the tutorial system now, if anyone wants to suggest options for the tutorial that would be great. :)

Right now the idea is forum admins can enable or disable this system in the settings. If it's enabled when certain actions are performed it would update a database table for that user so it would track completed ones etc. Once they're all completed it would no longer show this section of the widget.

There will also be options added letting forum admins control how much exp is rewarded for each stage completed on the tutorial.
Adding a dynamic system to let admins add in their own events seems like to much work though, so they will be hard coded.

The test design i've got in mind for the goals:
1759679182894.webp
1759679058642.webp
 
I think that turned out okay.

I ran into a problem where the events for actions interfeared with the tutorial reward, but I just turned the tutorial rewards into queued jobs. Figured it would be a better approach instead of redoing the listeners for the other events.
View attachment 328162

And of course you'd be able to disable this system completely.
View attachment 328163
That’s pretty cool. Maybe adding notifications to alert that it’s complete/done?
 
Can we play around with the code too? Obviously not for selling or resharing.
Yes all the code for my addons can be found in my website's org https://github.com/Sylphian-Network/ This includes this project which is here https://github.com/Sylphian-Network/Sylphian-UserPets

This does not come with a spritesheet yet. I have commissioned an artist to make me one I can use for my site, as well as the public repo. But for now you'll have to use your own until that becomes available.

As an alternative if you would like to design your own sprite sheet I have attached a png showing a template that can be used. Each colour is it's own animation, 4 frames per colour.


If you have any feedback let me know ;)
 

Attachments

  • template_spritesheet.webp
    template_spritesheet.webp
    3.2 KB · Views: 6
Last edited:
This is awesome, I love this idea.
  • Could you possibly make the colors, shapes, progress bars, etc customizable through the style properties? (Apologies if this is already the case)

  • Maybe also add pet naming? So instead of just username's pet, it would be like "DragonBear (username's pet).

  • Maybe you can add an attack/defence system, where you can use DB credits to purchase health potions/snacks to heal, or buy shields to protect your pet from attacks. Maybe have a requirement to post X amount to revive your "dead/injured" pet.

  • Maybe for the design, we could choose a sprite that is the default pet, then have some sort of outfit customizations similar to how it works on Reddit?
 
Could you possibly make the colors, shapes, progress bars, etc customizable through the style properties? (Apologies if this is already the case)
I'll look into doing this, for now most of the values are pointing to different variables in the color palette, I like the idea of setting up a dedicated style properties area.

Maybe also add pet naming? So instead of just username's pet, it would be like "DragonBear (username's pet).
I don't see why this couldn't be added.
Maybe in a layout like this instead of [Custom Name] ([I]Username[/I]'s pet):

[Custom Name]
[Username's pet]
That would replace the Username''s pet.

Maybe you can add an attack/defence system, where you can use DB credits to purchase health potions/snacks to heal, or buy shields to protect your pet from attacks. Maybe have a requirement to post X amount to revive your "dead/injured" pet.
I love the idea, but this is a humongous under taking. I'd be up for adding some kind of battle system at some point, but right now this isn't a goal for me.

Maybe a duel system could be better? A bit of a coin flip, so you could send your pet to 'battle' another users pet. They would both 'clash' then return with either more exp, or diminished stats.

It would be a 50/50 chance on who would win.

Maybe for the design, we could choose a sprite that is the default pet, then have some sort of outfit customizations similar to how it works on Reddit?
This is very possible and would be simpler than what I currently have, but I already have a vision and a sprite sheet being created for my site. For now, I’m sticking with that system. If this is something you really want, I’d be happy for you to PR changes.

In the future I could always expand on the current system to support both options though. But this won't be a priority for me.
 
Awesome, that's exactly what I envisioned for the names.

Styling would be great, until then maybe have the template well documented for what "code" leads to what visual element to reduce the need for inspecting.

I think the duelling idea is a great alternative to my suggestion. It would definitely give it purpose. (You could maybe even add trophies for winning x amount of battles, or losing...) I think having a Pet Battle Log would be a good addon for this feature too.

(Could even eventually add a leaderboard system for everyone's pets too, maybe based on XP, Battle Score[W/L & K/D Ratio]).

Is your current repo up to date? (Maybe after your next push, I'll have a play around with it to see if I can mock something up to ease your workload if I find time).

Either way, this looks great and I can't wait to see where this goes.
 
Awesome, that's exactly what I envisioned for the names.

Styling would be great, until then maybe have the template well documented for what "code" leads to what visual element to reduce the need for inspecting.

I think the duelling idea is a great alternative to my suggestion. It would definitely give it purpose. (You could maybe even add trophies for winning x amount of battles, or losing...) I think having a Pet Battle Log would be a good addon for this feature too.

(Could even eventually add a leaderboard system for everyone's pets too, maybe based on XP, Battle Score[W/L & K/D Ratio]).

Is your current repo up to date? (Maybe after your next push, I'll have a play around with it to see if I can mock something up to ease your workload if I find time).

Either way, this looks great and I can't wait to see where this goes.
The repo is up to date, I haven't touched it since last night.

First thing i'll focus on is the custom names, then i'll figure out the styling.
If I have time tonight depending on how long the styling takes, I'll see if I can make a start to the dualing system, but I want to flush out the design a little before I get to far into it.

It wouldn't be hard to track wins / loses, the trick out be if penalties are involved making it with mutal consent. Both pet owners would need to consent before a duel would commence.

Also the code is pretty well documented, but I could always draft up some github documentation to go in the repo as well.
 
Back
Top Bottom