pixeltris / YgoMaster

Offline Yu-Gi-Oh! Master Duel
MIT License
804 stars 119 forks source link

LE mod feature extensions #320

Open niceandneat opened 7 months ago

niceandneat commented 7 months ago

First of all, thank you for creating such an awesome project. I'm really enjoying playing it.

The LE mod (#1) in particular is a gift to me as a fan of old yugioh games. Playing the LE mod made me see the potential of Master Duel as an emulator of old yugioh games.

I've added a few features to make the experience even better. I wanted to open a pull request, but LE mod isn't part of the repository code, so I left the fix as an issue here.

More Solo Gates

image

More Regulations

image

Instruction

  1. Download DataLE.zip and extract it.
  2. Paste DataLE folder inside YgoMaster folder. Overwrite every thing if you asked.
  3. Run it. The first time you run it, the server initialization process may take a long time. Please check the server terminal window to confirm that the initialization process is complete and click the client's retry button.

More things to do

That's it. If you have any questions, feel free to leave comments!

pixeltris commented 7 months ago

Nice.

It'd be good to have a proper place where people can share stuff like this as I know a couple of other people who have also done stuff with that LE mod. I might work on building something in-game at some point to swap stuff out / download custom edits.

Vovoda commented 7 months ago

Wow congrats on making such an extensive mod ! I'm definitely looking forward to tinker with it.

I noticed the banlists/regulations don't work as you described, they don't have "all cards released since the time of the next ban list [...] included in the forbidden list". Quickly looking at the Regulation.json file confirms that, it would have been way bigger because it would list almost every possible cards early on. Is it something you removed because of the loading time ?

Having a system that auto-adjust the card pool based on the banlist used just like unlocking packs do would be rad. Is this goal reachable already ?

I'd be down to work on a progressively challenging dual order. I have a lot of experience playing and modding some of the older games. If you have anything already set up I'd love to take a look at it, otherwise I'll start something based on the list in VG.TCG.Decks.7z. I can also suggest a system for the rental decks, if we want to avoid mirror matches.

niceandneat commented 7 months ago

@Vovoda Thank you for playing with this extention! Let me try to answer your comments.

I noticed the banlists/regulations don't work as you described

Oh, wow... the banlist was not including future cards! There was a bug in my code, so I tweaked it a bit and created a new Regulation file and uploaded it. Please re-download the file in the issue. Nice report!

Having a system that auto-adjust the card pool based on the banlist used just like unlocking packs do would be rad. Is this goal reachable already ?

I would also like the system to automatically adjust the cardpool, but I don't know how to implement it, as I don't know how it works in DataLE mod right now. Maybe @pixeltris can help with this. I think it would be hard to implement if I had to touch the source code as I am not familiar with C#. But If there's a way to implement it just by modifying the json files, I can work on it right away.

I'd be down to work on a progressively challenging dual order. I have a lot of experience playing and modding some of the older games. If you have anything already set up I'd love to take a look at it, otherwise I'll start something based on the list in VG.TCG.Decks.7z. I can also suggest a system for the rental decks, if we want to avoid mirror matches.

I thought that creating progressively challenging duel order is the most important but difficult task. I didn't even know where to start. If you can help to make the dual order better with your valuable experience, I'd really appreciate it. Mirror matches are a bit boring, so new system for rental decks is also welcome. If you can give me a simple list of deck file names or something similar, I can rearrange the order of duels for each game.

Lastly, any ideas to make this mod better are welcome!

pixeltris commented 6 months ago

auto-adjust the card pool based on the banlist used

The code which expands the card pool as you unlock packs is limited to just that pack functionality right now. I'm not sure how auto-adjust based on banlist would work. Would that be based on when gates are unlocked?

I guess an option to set the banlist for each gate (or even each chapter) would be useful to enforce the "recommended banlist" / display the "Prohibited" deck banner.

I thought more about the mod sharing stuff. An in-game GUI to swap out assets / download mods would be nice but it's too much work. I might try something with github.io pages instead.

niceandneat commented 6 months ago

I'm not sure how auto-adjust based on banlist would work. Would that be based on when gates are unlocked?

I thought when a user selects a different band list, it would be nice to have the card pool change with it. Is that be possible?

It seems like a lot of work tough.. for example, what happens to the out-of-card-pool(a.k.a. future) cards in the deck if a user changes ban list to the past one?

I guess an option to set the banlist for each gate (or even each chapter) would be useful to enforce the "recommended banlist" / display the "Prohibited" deck banner.

That would be a option but I didn't want to force to use specific ban list for each gates. Somebody might want to use other ban list for the gate.

I thought more about the mod sharing stuff. An in-game GUI to swap out assets / download mods would be nice but it's too much work. I might try something with github.io pages instead.

That would be great! Whether it's an in-game GUI or a web page, I'm looking forward to seeing it.

tearight commented 6 months ago

@niceandneat

That's an impressive mode!

I'm making Sologate mods similar to what you did.

If you don't mind, why don't you look at my work and make a solo gate together? I can combine it with your work if you want. I think you are a Korean developer based on the github profile, but I am also a developer from the same country. I think we will get a good result if we work together because the language is right and we have similar interests.

Please read the introduction below and send an email to tearightss@gmail.com if you are interested.

Introducing my work

Inspired by the LE mode of pixeltris, I'm creating a challenge solo mod that can confront Yu-gi-oh's past format-specific strong decks.

For example, I will describe Critter-Format. The earliest packs in LE mode include the Blue-eyed White Dragon's Legend Pack and the Metal Riders Pack. The Critter format is the format to compete within these two packs.

The next format is Treasure Format, which includes the SpellRuler pack, and includes additional cards such as delinquent-duo to form a deck. Of course, each format has a different prohibition-limit list of cards.

Each release of a new booster has its own format, and several decks corresponding to each format environment are drawn up and added as a challenge.

Release of the pack through the progress of the challenge

Players solve challenges and get gems. Then they release the pack and win cards for the pack. I'm thinking of a scenario where if you win about 90% of a pack of cards (settable), the next pack will be released.

Some cards are released early

MasterDuel provides another environment different from offline by releasing the latest cards early. I'm also working on rewarding later cards early or turning them into challenge decks. These include non-tier cards, which were not well received at the time of release. This gives players the environment and inspiration to create decks creatively as well as tier decks at the time.

To provide an interesting challenge

Some of the deck recipes offered in each game (TGC.DECK.7z) are useful, but most are not. Players who are challenging this may find it boring, so we're picking up challenging deck recipes posted on the Internet and making them a challenge.

There are so many deck sources available on the web, and they are easy to find. Also, files come in ydk format, so you can save the deck for masterdual mode.

However, it is difficult to create a pure Json file in constructing such a solo gate, so we are also producing a Windows application that automates it with Python.

MysticEgg commented 3 months ago

@niceandneat

Hello! Fantastic work and effort shown with this mod, well done!

I have however come across what I think it a rather irksome bug. The custom banlist 'Regulations' seem to somehow irreversibly 'erase' most of the card pool. When I set the regulation to 02-2000, for example, the deck builder from then on only displayed 116 cards, even when I returned to a different regulation, thereby preventing me from making any custom decks. Moreover, re-installing the files (including the base YGO Master mod) somehow did not fix this issue.

I can manually import decks to /YgoMaster/DataLE/Players/Local/Decks/ to circumvent this problem, but it is still rather perplexing.

RashFaustinho commented 2 months ago

This is very nice

The banlists don't work perfectly, Idk if that's due to the game constantly updating with new cards

Thinking about adding Forbidden Memories and Duelist of The Roses duels as well?

IvanTheRysavy commented 1 month ago

in WC2006 and gx tag force (first duel) there are decks with 80 main deck size and the game crashes if i try to run these duels the thing is i get it i could just replace them or something but is there a easy way to check where these decks are located? they are just these numbers seemingly incremented by certain amounts i couldnt find a way to identify them , in WC2006 the deck is called cyber jar - embrace your potential and the gx tag force one is the first duel