Jump to content

Mysidia Deluxe


Dinocanid

Recommended Posts

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

Mysidia Deluxe
Mysidia 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"
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.

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

Spoiler
  • 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!

 

Disclaimer
This 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.

  • Like 3
Link to comment
Share on other sites

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. 

Edited by Mobotropolis
  • Like 1
Link to comment
Share on other sites

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.

Link to comment
Share on other sites

@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

Edited by judda
Link to comment
Share on other sites

  • 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. 
Link to comment
Share on other sites

#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)

Link to comment
Share on other sites

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.

Link to comment
Share on other sites

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!

Link to comment
Share on other sites

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.

Edited by Dinocanid
  • Like 1
Link to comment
Share on other sites

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 

Edited by Mobotropolis
Link to comment
Share on other sites

12 hours ago, Mobotropolis said:

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 

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

Link to comment
Share on other sites

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).

Link to comment
Share on other sites

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?

Link to comment
Share on other sites

  • 4 weeks later...

I'm so glad someone has decided to take this up.  I hope you got HOF's permission though as he owns the original script.  I've waited for years for him to do something with this as it is currently unusable to me with all the e-notices and crap.  I also like that you will be commenting the code which will help people like me who are not saavy with OOP programming.

Edited by Kesstryl
Link to comment
Share on other sites

Custom versions of the script is allowed, but I got his permission before making it since it would be located on a different site (github), this is what he sent me: 
 

Quote

It is allowed so long as it has links/credits that direct back to the original script. The official Mysidia Adoptables script will not be on Github since it is not meant to be open source, but a custom version is fine.

So I'm good to go ^^
I hope to get back to working on it soon. Earning money is my highest priority at the moment though, lol.

I'll be leaving a bunch of comments in the code, since my biggest problem starting out was that there were all these functions and whatnot and nothing to say what it means. Not to mention so many things are split across multiple files (which I plan to condense), so it was hard just tracking down where things were.

Edited by Dinocanid
Link to comment
Share on other sites

  • 4 months later...

Alright, I've taken a long break but I plan on working on this some more this weekend!

One new thing I've decided over the break was to drop composer support (+ plans to merge it into the main branch) and just leave it up to the individuals that want it to install it. That doesn't mean the composer branch is going anywhere though! The code is still open source, so anyone that wants to maintain it is welcome to. (It just means I won't be maintaining it myself)

  • Like 2
Link to comment
Share on other sites

  • 2 weeks later...

Slowly moving forward, but I finally added in the bank feature and made some final changes to the night sky theme (I need to work in a pretty environment lol). All the built in themes will also only use Bootstrap 4 now.

Next things I'll start on soon are condensing the myadopts page (lots of unnecessary pages and redirects) and adding the auction and raffle features.

  • Like 2
Link to comment
Share on other sites

  • 1 month later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...