July 2023 Issue #12













Have an upcoming event in August you'd like featured? E-mail xoops@fantazzled.com!


Pink Sneeze!
pinksneeze.neocities.org


Abby's Petz Society!
abbyspetz.neocities.org

Sound Bytes from Reflet!

       I am so glad I finally got around to doing this interview with Reflet @ Yabiko! Especially with hints of a new Genepoolz on its way... So let's see what Reflet has to say, shall we?

How and when did you discover Petz?
       When I first played Petz, I was a small child and wanted exactly two things in life at the time: a dog, and the game Kid Pix. So, my mom decided to kill two birds with one stone and bought me a CD with Dogz 4 and Kid Pix Studio Deluxe bundled together. I was really young, so I don't have very many memories of this time, but one thing I do remember is that I adored the dachshund breed, and had two dachies named Happy and Beahavy (was supposed to be "behave"-y...). I was so excited when they eventually fell in love and had a lovely girl named Cherry - I still have her .pet file, and she just had her 20th birthday in April. As far as I'm aware she's the only one who made it across computers to Petz 5 when I got it.
Do you have any original game favorites?
       As I mentioned earlier, I absolutely adored the dachshund breed as a kid. ...Now that I type that, I'm pretty sure I had another one named "Adorey" at some point because I thought they were the cutest things ever. I also loved German Shepherds from Petz 5, I had a whole profile dedicated to breeding them. Ubisoft didn't get their fur color areas right, so when mutations occur, the colors manifest kinda randomly, like a calico dog - but that appealed to me as a kid, haha.        Nowadays, I think my favorite breed is the dalmatian. Something about their face shape is appealing to me, especially with pointy ears. I also love mutts and danes. For catz, I think Maine Coons are my favorite.

How long have you been part of the community?
       As a kid in the 2000's, I didn't really have a concept of an internet community. I knew people had dedicated Petz websites and remember making my own in Microsoft FrontPage when I was around 9 or so - even adopted out some petz to others through it. I have a small handful of petz that I adopted from other people around this time as well. (If Danielle@ThePetzFiles, Wolfwalker Kennelz, and/or petzplayland are reading this, hi! I still have your petz!) Ultimately though, my start in the community was in late 2015. Long story short, I was in a very dark place and had been for years, and wanted to make some friends. I liked Petz, so I thought maybe I'd seek out the community to try and meet people. I found RKC from a quick Google search, and learned about + joined Whiskerwick shortly after.

What is something you love about the community?


Looking for stamps? Let me help!

✈ Cyborg, Filthy Hippie, Lemonade, Oasis, PhantomBark, and Powerhouse have monthly stamps.

✈ Rebecca, Lyric, Arie, and Echotooth have Stamps sales on WW.

✈ Check out the Petz Site Directory and search for sites with stamps or find-its!



       I love how wholesome and close-knit it is. Most everyone is so kind, I almost never see any drama. I love contributing, even if my participation might be sporadic at times. At the risk of sounding immodest, it's a really good feeling to be seen, appreciated, and encouraged by so many people. It means more than I can describe with words that the PC has given me a way to make people happy through something I genuinely love to do.

Page 2



Interview Continued...

And what about something you love about the game?
       The versatility! I really think Petz was ahead of its time - P.F. Magic designed a social game when the internet was still in its infancy. Not only are pet files small and easily tradeable with others, but the game's very architecture was designed as a "plug-n-play" type of thing. Modules (breeds, toys, etc) can easily be added or removed, and in turn they can override or add game behaviors. The graphics engine is simple in concept - just drawing circles and polygons, really - yet very elaborate in execution, allowing for so much creativity and artistic expression.

What motivated you to hack/mod the game, and where did you learn?
       Although my first Petz game was Dogz 4, Petz 5 was my true childhood Petz game. When I joined the community in late 2015, I was surprised to learn that most of the community not only preferred P4, but actively avoided P5 due to its lack of backwards compatibility. There was a very clear rift between P5 players and the rest of the community when it came to trading petz, and as a P5 player this saddened me. I wondered if it was possible to make P5 files backwards compatible, and I thought, "well, I could try to reverse engineer the problem, maybe it's a simple fix."
       I knew absolutely nothing about anything regarding the subject, but I've always been fascinated by code and the inner workings of games. So, I googled "how to reverse engineer a game", and, per the instructions on the webpage I found, downloaded Ollydbg (a disassembler). I vividly remember opening Petz 4 in it, waiting with anticipation for it to load, not sure what sorts of neat technical information it would show me - then it loaded and I had zero idea what I was looking at. But something weird happened... Rather than give up, I decided to start at the beginning.
       I began reading about the most basic of basics regarding x86 assembly language... Pestered my mom (who worked as a software developer in the 90's) for details on some programming/computing basics... And over time, what started as "I just need to know enough" became "this is actually really fun and I'm genuinely enjoying it even though it's hard." I don't think I ever knew what it felt like to have a passion until I discovered reverse engineering. I'm not really sure how I progressed from there, it's kind of a blur, but I know in retrospect that I taught myself in probably the least efficient way possible... People said "you gotta learn how software is made before you take it apart" and I was just like nah I'm good. Haha, I can now say with confidence that it's way easier to piece together compiled code if you understand the constructs and conventions that the source code was written within.
       TLDR; first it was lack of P5 backwards compatibility, now it's just something I genuinely love to do!

What is your favorite part of the game to hack/mod?
       I really enjoy piecing together and documenting the game's data structures. I've been working on a Cheat Engine table for a few months now that maps out every single byte of a pet's internal data structure... It's still not done, but the highly polymorphic nature of Petz's architecture is fun to work with. I've also been having a lot of fun tweaking game behaviors/logic through patching certain parts of the code with my own hand-written assembly.

If you could ask the Petz developers about the reasoning for one of their design decisions, what would it be?
       Okay, here's a short one that's bothered me for years - what the hell is a "malto" script?
       And a slightly more in-depth one: I'm really curious about their original intentions for the Allele class, as well as its derived class, DataValue. They are the building blocks of the genetics system, but much of their functionality seems underutilized or completely unused.
       And on that note, I would like to know where they defined the static DataValue Allele::Combine(Allele const &, Allele const &) method without creating a circular dependency.
      

Page 3

Interview Continued...

You also make a lot of tools for the community, what are you working on now?
       Besides a lot of miscellaneous things - from small scripts to game tweaks - I'm in the early stages of making the next major update to GenePoolz! It will include many new features such as editing genes, personality and preference information, more detailed information about individual variations, sorting/filtering through multiple petz (i.e. "which of my dogs carry poodle ears?"), stuck pregnancy fix, and more. Another thing I've been working on is a breeding patch that touches up/improves (in my opinion) the logic related to the passing down and mutation of genes - not to make it easier per se, but a bit more nuanced and fun. For example, I find so-called "fluke" eyes (where a pet is born with an eye color that they don't carry genetically) to be incredibly un-fun, so I turned them into actual mutations and reduced their likelihood of occurring to compensate.

If you could create any new feature for Petz - no limitations - what would it be?
       So... I actually have something I want to propose to the community at large, and I've saved this question for last on purpose... Here goes.
       Ever since I joined the community back in late 2015, I've had an idea floating around in my head with no realistic way of making it happen until fairly recently. If you've been in the Petz Hacking & Modding Discord, you might know that lately I've been working extremely hard - way harder than should ever be necessary just to make tools - to dissect and document the important game classes that make Petz function. There's a reason for this beyond just idle curiosity, one that I've been quiet about in recent years because I didn't want to hype (or upset) people in the community for something that wouldn't even be possible for a long time...
       I would like to make an open-source version of Petz, one that takes everything we've loved about the games for nearly 30 years and brings it into the modern era with new features, bug fixes, quality-of-life additions, native Mac and Linux versions, and more. The original games were designed around the idea of the developers creating and releasing new content. I envision a Petz designed for anyone to do that - be it single breeds, entire species, toys, clothes, playscenes, etc: regardless of what it is, the community will have all the tools necessary to create those things and more with full customization of their attributes and behaviors, opening the door for creativity leagues beyond what we've ever been able to do before. Additionally, this would open the door for all sorts of cool things, such as: babyz and oddballz together with petz, different game modes tailored to specific gameplay styles, such as breeding or natural raising, the ability to decorate playscenes in depth and lock certain items in place (such as a christmas tree, cat scratcher, or pillows/beds) so petz can't mess them up unless they're deliberately trying to be naughty, integrated social features for pet adoption/breeding services/sharing+downloading creations/etc... And wouldn't it be nice if your petz weren't constantly kicking their food bowls around when they just want to eat?
       I'm sharing this now because I think I'm (finally!) at a point in both my knowledge of the game and skill level of reverse engineering/coding where this is actually feasible. It certainly won't be easy, and would probably require more development power than just me to create and maintain it in a sane and timely fashion, but I would love nothing more than to make it happen sooner rather than later. I'll admit, I'm not sure where to start...at all...but maybe you guys could help me figure that out?


July 8, 2014 - Miller's Birthday, owned by Tephis


July 12, 2015 - Ostehøvel's Birthday, owned by Sasha@Hemlighet
July 17, 2021 - Delphinium's Birthday, owned by Megan@Oasis/Xoops

July 20, 2019 - Tassel's Birthday, owned by Kathleen@Alohomora

July 22, 2002 - Petz 5 Release


Page 4


check out some new sites - new downloads - adoptions - and more!
If you would like your new content featured here, e-mail xoops@fantazzled.com


(Credits: Milk Ad Babyz pic courtesy of Kayla)

Page 5