Mysidia Deluxe

Dinocanid

Artist
(before I begin, does this go here? idk...)

Mysidia DeluxeMysidia Deluxe is an open-source custom version of the Mysidia Adoptables script, based off of v1.3.4 and maintained by the community. It is available on GitHub.The "Why"[SIZE=13.3333px]Mysidia is a fantastic framework, but it's pretty old and outdated. Mysidia v.4.0 has been hinted at for years but at the moment it's a general consensus that it's never coming at this point, and the script desperately needs an update.[/SIZE]

The goal here is to modernize it and add more built-in features so more people will be inclined to use it, as well as keep it maintained.In-Progress Features

  • Bugfixes (like the "rn" issue, and reading other user's PMs)
  • Reskinned ACP for a more modern look
  • 4 brand new themes
  • More HTML (no formbuilders or tablebuilders, html will be used instead)
  • More comments in the code, so it's easier to understand what's going on.
  • PHP 7 support (PHP 7.2 not supported yet, it just came out last year so it's pretty low priority)
  • Compressed code. At the moment some of the pages are unnecessarily split into several files, so that's getting cleaned up.
Planned Features

  • Smoother installation
  • More usage of AJAX
  • Overhauled trade system
  • Auction and raffle system
  • User shops
  • Built-in forum (a forum right on the site, not SMF or myBB)
  • Layered pet image support (includes the ability to add backgrounds and decor)
  • Bank system
  • ...and more to come!


DisclaimerThis custom version is not yet ready to build a site on. Once it is ready, a downloadable version will be available in the releases section. It is never recommended to use code in the master or subsequent branches, as there can be unsuspected bugs and issues. Releases are the most stable.

 
It's nice to see that some people are doing something with this script.

I agree that it is a pretty good framework and it's done wonders for helping me get better at PHP. One of the reasons I stopped using it (besides deciding to change directions creatively) was because it was so old and used so many hacks to get you where you needed to go. It'd be nice if some of the most commonly used hacks worked out of the box. 

A shortlist of what I used (I think you wrote some of these!) 

- Pet's Birthday
- List of Previous Owners
- Item Shop Revamp (redoing the shop system entirely so it's easier to manage and more challenging for players was one of my goals)
- Instant Messaging
- Randomly Generated Personality/Stats
- Item Mixing
- Better Administrative Control over User Accounts
- Seamless Login 
- WYSIWYG for PMs
- Random Events
- Achievement System
- Pet Sorting
- Item Drop Mod (get an item when you click a pet) 
- User Shops
- Pet Profiles
- Time-Specific Text
- Daily Surprise
- Held Items/Companions
- Questing
- Lottery
- Explore System/Dailies 
- Training School 
- Bank Mod
So, what do you need help with? 

I don't think I'm good enough to write PHP/Backend Code, but I am good with front-end design and can help you test features. 

 
Last edited by a moderator:
Helping test features would help a lot! At the moment I test it with XAMPP, but several people are more likely to find bugs than one person. So if you ever find the time, it'd be helpful to clone/download it and test it out to help find any potential bugs. Then they could be reported in the issues section.

I did write some of those mods actually! The achievement system, pet sorting (one at least, there's another one written by someone else), user shops, quests (one of them), lottery (kind of, I called it the raffle mod but it worked like a lottery), and the bank. For the others I'd have to ask permission to add to this custom version, or just remake them. They all seem like good additions to have right away.

 
@Dinocanid A few small suggestions:

  • Move all of the web content down one folder in the repository and make this in a "public" folder.  That way in the future you can have a safe environment.
  • Set up composer for at least some of the dependencies/namespaces.
  • Instead of making the repository under your username, make a group/team "mysidia-deluxe" with one repository for now (this one)
~judda

 
Last edited by a moderator:
  • Could you explain more what that means? ^^; Is it basically just move all of the files into a subfolder called public and work from there? I don't have the paid version of github, so I can't make any parts private if that's what you mean.
  • Never actually used composer, and looking at the documentation I have no idea what exactly I'd be using it for. Would it just hold all the backend stuff like the resource folder?
  • Good idea, I'll make it an organization and add this as its repo. 
 
#1 is literally just moving everything down one folder.  That way when deployed to a consumer's web server they can have things stored at least a bit more securely.

#2 use composer for common libraries that you can use from the internet (packagist.org)

 
Oh that's what composer is for! I can include it, but I don't really think it'll be used in the first release. The only libraries being used at the moment are JQuery, Bootstrap 4 (which has it's own dependencies like popper.js), and Materialize (and FontAwesome, if that counts), and those are only included in the themes that use them via the header.tpl file. (although JQuery and FA is included in all of them)

Also I moved everything into a subfolder, but it's taking a long time to process so it's going to take a minute.

 
Well, it's too hot to cook (heat index 105) and I'm just waiting to jump into portals so let's give this a spin. 

1. Downloaded from Github
2. Logged into my Server 
3. Upload + Extract went fine 
4. Noticed ... my AddOn domain isn't working. I'll do that later. 

ONWARD. 

mm_d01_01.JPG


Ah. I remember this familiar screen. And its aesthetic. 

mm_d01_02.JPG


If I took longer than 5 minutes and actually edited the source (this was inspect) I can make it look even better -- especially on mobile screens. 

mm_d01_03.JPG


I took a look at the three warnings here and noticed those folders (/gif, /jpg, and /png) were not in the picuploads folder. I made them and made them writable for a pass.

Now, for my least favorite part of the installation; creating the database and users. 

I'm familiar with this process, but wonder if perhaps the instructions should be made more clear for those that aren't. 

Installation Complete. 

Now I deleted my Install folder and changed back the Config file so it's unwritable. 

And go to my site - 
http://www.ohnomobo.com/mall/

... Hmm .. 

mm_d01_01.JPG


This is probably the worst time of the day for me to figure out why I have an error, so I'll sleep on it!

 
Actually I was working on restyling the installation screens and, well, it looks exactly like the mockup (colors and all) xD
It's unfinished though, and I plan to add images/examples to help guide the process, especially the DB setup screen.

The gif, png, and jpg folders were actually intentionally removed, but I forgot that the installation checked for it. I'll have to update that.

I found the fix for the error too, it was just a typo (string had to be changed to mystring). Found two instances of that in class_controller, so I fixed it.

 
Last edited by a moderator:
Generally speaking, I just wanted to make them darker so they looked less like McDonalds. 

Instead of doing a reinstall I just went in and fixed the code myself and it seems to be working now. 

I'll look/play around a bit when I get home tonight. 

Edit: I decided to do a fresh install and got the following after it was done - 

mm_d01_06.JPG
 

 
Last edited by a moderator:
Generally speaking, I just wanted to make them darker so they looked less like McDonalds. 

Instead of doing a reinstall I just went in and fixed the code myself and it seems to be working now. 

I'll look/play around a bit when I get home tonight. 

Edit: I decided to do a fresh install and got the following after it was done - 

 
Yup - I got that too.  It has to do with the attempt to cast as a Mystring.  I've put in a PR to add in PSR-0 autoloading support which also fixes that (since I couldn't test).

~judda

 
I pushed through another biggish PR this morning.  Removing the config.php file from the code in favour of using a .env file from the auto-loaded dependency.

 
I merged it, also I sent you an invite as a collaborator. For the updates concerning composer and auto-loading, could you pull from the composer branch from now on? I'd like for any possible bugs caused by the change to be smoothed out and stuff first before anything is merged into the master branch (especially since the updates are so big).

 
Pet battle system could be implemented? I know someone made one where you went against NPCS on the mysidia forums, but would it be possible to make a PVP version of the battle system too? So fighting against other user pets.

Maybe make a tournament version too where the winning pet also wins a item/pet as a prize?

 
There's actually another battle system made for mysidia using AJAX (and it allows players to battle other pets). It's not real-time, but it is an improvement. I'll have to ask permission to include it.

 
I haven't really made any changes this week since I'm working on my site, but next week I should be able to spend some time on it.

 
Back
Top