Equipment "booster packs"?

Kotaro

Übernerd
Veteran
Joined
Mar 29, 2012
Messages
164
Reaction score
11
First Language
English
Primarily Uses
RMMV
So, after a really long absence from this forum (of literal years), and several abandoned game ideas (and one that I really want to go back to later) in the interim, right now I want to focus on a much smaller project than what I've tried before, to recover from some creative awful burnout I've been suffering from. But that's neither here nor there. There's something I need for this:

So in this game, the main character will get skills, items, and equipment they can use in the form of, basically, trading cards. What I need is a plugin to set it up so that instead of buying specific things in shops, the player can buy various "booster packs" that give them random cards, with different kinds of packs having different pools of cards to draw from. I'm thinking each pack will contain a few cards, and when the player buys one, they'll get a little screen showing them what they got, where they can see the names of the cards and their item descriptions (I'm not planning to use illustrations or anything for these cards, just standard item icons and descriptions).

I'm also vaguely considering asking someone to put together a battle system similar to something like Baten Kaitos, with the player building decks for the party members and drawing random cards from them in battles to make hands, and picking from those (and I'm honestly surprised that I haven't seen a plugin for this), maybe combined with ATB, but it's a ton of work to make an entire battle system, and I'm less firmly attached to that idea and can just have the player equip cards to grant those specific skills and such if I have to keep it simple. The booster pack thing, though, is pretty necessary for this game to work as intended.
 

Dirge

Sound Engineer
Veteran
Joined
Apr 5, 2015
Messages
413
Reaction score
282
First Language
English, German
Primarily Uses
N/A
You could use Yanfly's Disassemble plugin. Make booster pack items disassemble into whatever cards you want with whatever chances you want, and change the Disassemble text to be "Open". You do need a "disassembler" item that is consumed on use, but you could probably find someone to tweak that for you.
 

Dirge

Sound Engineer
Veteran
Joined
Apr 5, 2015
Messages
413
Reaction score
282
First Language
English, German
Primarily Uses
N/A
You could even have skill cards - cards that having them in the inventory gives an equippable skill - using Yanfly's Equippable Skills plugin.
 

mlogan

Global Moderators
Global Mod
Joined
Mar 18, 2012
Messages
14,137
Reaction score
7,796
First Language
English
Primarily Uses
RMMV

@Dirge , please avoid double posting, as it is against the forum rules. You can review our forum rules here. Thank you.


Next time you have more information to add, just go back and edit your post please. Thanks!
 

SoSick.

Veteran
Veteran
Joined
Jun 29, 2016
Messages
223
Reaction score
190
First Language
english
Primarily Uses
RMMV
hi there! im pretty sure soul power 777 has a plugin to do this! called loot crate! ( youtube it ) the player has a chance of getting certain items from opening a crate! ( you can re name it to cards etc ) you could even make it so before opening the crate/cards you transfer player to a map, and create some sort of opening animation. hope this helps
 

Kotaro

Übernerd
Veteran
Joined
Mar 29, 2012
Messages
164
Reaction score
11
First Language
English
Primarily Uses
RMMV
You could use Yanfly's Disassemble plugin. Make booster pack items disassemble into whatever cards you want with whatever chances you want, and change the Disassemble text to be "Open". You do need a "disassembler" item that is consumed on use, but you could probably find someone to tweak that for you.
You could even have skill cards - cards that having them in the inventory gives an equippable skill - using Yanfly's Equippable Skills plugin.
I'm already aware of the Equippable Skills plugin, actually.
And the Disassemble plugin doesn't really work for what I want to do, unfortunately. I want every pack to guarantee a specific number of cards, but have those cards be picked randomly from the available pool. That plugin gives each item a list, sure, but there's no way to make sure the player always gets the same number of items from it, even if the items they get are random (for example, if I wanted every single pack to give exactly five random cards when opened, the plugin doesn't seem to have a way to do that). Needing a disassembler item is also an extra step that would make the whole system more inconvenient for the player; I really want the packs to open automatically when the player buys them to avoid things getting unnecessarily over-complicated.

hi there! im pretty sure soul power 777 has a plugin to do this! called loot crate! ( youtube it ) the player has a chance of getting certain items from opening a crate! ( you can re name it to cards etc ) you could even make it so before opening the crate/cards you transfer player to a map, and create some sort of opening animation. hope this helps
I don't see any way to randomize items from that; it seems to be predetermined with only the quantity of each item being potentially random. And again, I want the packs to open as soon as the player gets them. So no, that doesn't work, either.
 

Dirge

Sound Engineer
Veteran
Joined
Apr 5, 2015
Messages
413
Reaction score
282
First Language
English, German
Primarily Uses
N/A
The loot crate plugin lets you use this tag:
gainItem(Math.floor(Math.random() * 10), 1);

Which would give one item from id 1 to id 10. So let's say you wanted a booster pack with seven cards, including one guaranteed rare card, you'd put your common cards up to ... whatever, from ID 1 to ID 10 let's say, and then rare cards from 10 to 20, your tags would look like this:

gainItem(Math.floor(Math.random() * 10), 1);
gainItem(Math.floor(Math.random() * 10), 1);
gainItem(Math.floor(Math.random() * 10), 1);
gainItem(Math.floor(Math.random() * 10), 1);
gainItem(Math.floor(Math.random() * 10), 1);
gainItem(Math.floor(Math.random() * 10), 1);
gainItem(Math.floor(Math.random() * 10)+10, 1);

Or something, I'm not 100% on that last one. That would give six common cards and one rare card, randomized.
 

Kotaro

Übernerd
Veteran
Joined
Mar 29, 2012
Messages
164
Reaction score
11
First Language
English
Primarily Uses
RMMV
The loot crate plugin lets you use this tag:
gainItem(Math.floor(Math.random() * 10), 1);

Which would give one item from id 1 to id 10. So let's say you wanted a booster pack with seven cards, including one guaranteed rare card, you'd put your common cards up to ... whatever, from ID 1 to ID 10 let's say, and then rare cards from 10 to 20, your tags would look like this:

gainItem(Math.floor(Math.random() * 10), 1);
gainItem(Math.floor(Math.random() * 10), 1);
gainItem(Math.floor(Math.random() * 10), 1);
gainItem(Math.floor(Math.random() * 10), 1);
gainItem(Math.floor(Math.random() * 10), 1);
gainItem(Math.floor(Math.random() * 10), 1);
gainItem(Math.floor(Math.random() * 10)+10, 1);

Or something, I'm not 100% on that last one. That would give six common cards and one rare card, randomized.
Ah, thank you for explaining that. Now the question is, how do I point it to a particular kind of item, i.e., armor or items? Because I'm making the skill cards as accessories to be equipped (using a plugin that allows for multiple equipment slots of the same type), and consumable items also as cards available in booster packs. So, say I want one kind of pack to contain only consumable items, and a different pack to contain only skill cards, how would I point the plugin to one or the other using that tag?
 

Dirge

Sound Engineer
Veteran
Joined
Apr 5, 2015
Messages
413
Reaction score
282
First Language
English, German
Primarily Uses
N/A
I think it only works for Items. You have a couple solutions... the first is get someone to tweak the script so that it can point to weapons and armor as well.

The second is to have a common event that checks for a given Item card, removes it and replaces it with the right equipment card, and have your booster pack item run this common event on use.

So, say you have a Short Sword Item card. Your booster opens, the common event runs, sees the Short Sword item, removes it, and gives the player the Short Sword Weapon card instead.

Now, I'm not 100% sure that would actually work because the common event would be triggered at the same time as the pack is opened, which may or may not catch the new items, so you'd need to test that. If it doesn't work, you'll instead need a common event running parallel that does it automatically. Slightly heavier on the load, but it'll work.
 

Astfgl66

Veteran
Veteran
Joined
Jan 5, 2016
Messages
679
Reaction score
521
First Language
French
Primarily Uses
Take a look at my random loot plugin (link in my signature).
It allows you to grant random items, weapons, armor, gold and even encounters.

Or any of the workarounds suggested above might work. I suggest getting a utility common event plugin that runs a given common event when you exit the menu however, so as to not use a parallell process.
 

Kotaro

Übernerd
Veteran
Joined
Mar 29, 2012
Messages
164
Reaction score
11
First Language
English
Primarily Uses
RMMV
Take a look at my random loot plugin (link in my signature).
It allows you to grant random items, weapons, armor, gold and even encounters.

Or any of the workarounds suggested above might work. I suggest getting a utility common event plugin that runs a given common event when you exit the menu however, so as to not use a parallell process.
That actually works a lot better than the one Dirge suggested. It still doesn't seem to let you automatically open the pack upon purchase, though (even if I set up the event to automatically open the pack when they exit the shop menu), so that's still an extra step that makes it less convenient for the player.
 

Astfgl66

Veteran
Veteran
Joined
Jan 5, 2016
Messages
679
Reaction score
521
First Language
French
Primarily Uses
Alright, it was simple enough so I added something to allow you to do that.
By adding the notetag <LTPurchase> to a loot table item, it will be instantly opened when purchased.
Just redownload the plugin and you should be good to go.
 

Kotaro

Übernerd
Veteran
Joined
Mar 29, 2012
Messages
164
Reaction score
11
First Language
English
Primarily Uses
RMMV
Alright, it was simple enough so I added something to allow you to do that.
By adding the notetag <LTPurchase> to a loot table item, it will be instantly opened when purchased.
Just redownload the plugin and you should be good to go.
Oh wow, thank you so much! That's absolutely perfect.
Just one quick question: if I want to have a pack contain multiple cards, should I just put the "lootTable" tag in the notebox multiple times?
 

Astfgl66

Veteran
Veteran
Joined
Jan 5, 2016
Messages
679
Reaction score
521
First Language
French
Primarily Uses
That wasn't possible, but again it was simple to add.
Re download the plugin again, you will be able to add other cards rolls by adding more lootTable notetags, following that format:
<lootTable:>
<lootTable2:>
<lootTable3:>
It will keep going until there is no consecutive number, rolling one time for each loot table.
 

Kotaro

Übernerd
Veteran
Joined
Mar 29, 2012
Messages
164
Reaction score
11
First Language
English
Primarily Uses
RMMV
That wasn't possible, but again it was simple to add.
Re download the plugin again, you will be able to add other cards rolls by adding more lootTable notetags, following that format:
<lootTable:>
<lootTable2:>
<lootTable3:>
It will keep going until there is no consecutive number, rolling one time for each loot table.
All right, I just tested it, and it seems to work. So how can I make it tell the player what they pulled from the pack when they buy it?
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Profile Posts

I finally got a book out the door after seven years of nothing \^-^/ Now if I can get a game out the door too, that'd be great...
MY GAME IS NOW OFFICIALLY RELEASED!!
*FurAffinity is down*
*Sets house on fire*
This is fine.
How do you delete your own stupid thread here

Forum statistics

Threads
94,362
Messages
920,251
Members
124,124
Latest member
etiennasse
Top