A downloadable asset pack

Buy Now$5.00 USD or more

KoTC Optimized Auto Scaling Minimap Basic [Free]
KoTC Optimized Auto Scaling Minimap Advanced [Premium]
KoTC Optimized Pathfinding System
[Premium]
KoTC Basic Optimized Roguelike Line of Sight [Free]

KoTC Optimized Basic Onscreen Waypoint System [Free]

KoTC Optimized Advanced Onscreen Waypoint System [Premium]
KoTC Optimized Dynamic Music System [Free]

KoTC Roguelike Visual Loot Drop System [Premium]

Fully Compatible with Yanfly Item Core, Yanfly Discard will drop items nearby, Yanfly Picture Item Images will be displayed on the map in the place of the icon if used. If item is renamed with Yanfly Item Rename, it will retain its name if dropped, and picked up later. If you are using <Text Color: ID> from item core, the drop name displayed will inherit the color.

Allows one to have tier based loot drops, or level scaling loot drops all based on your preferences. Each drop table has a weight for rolls, and each table can have configured lists of items that also each have their own weight, for optimal loot drop configuration.


- Scroll all the way down if you use Item Discard for notes to control dropped items settings -

Plugin Command: KoTCAddMapLoot ITEMTYPE ITEMID X Y AUDIO PITCH VOLUME PITCHVARIATION
Script Call: KoTCAddMapLoot(ITEMTYPE, ITEMID, X, Y, AUDIO, PITCH, VOLUME, PITCHVARIATION);

Adds loot to the current map.

Itemtypes are "item", "weapon", "armor".

Item ID is the id of the item in the RPG Maker database.

X and Y are the coordinates for where you want the item.

Audio is the sound you wish to play when the item is picked up. Set to undefined if you do not wish audio to play.

Pitch is the pitch of the audio to play when picked up.

Volume is the volume of the audio to play when picked up.

Variation is the variation of the pitch of the audio that is played when picked up. If variation is set to 20, and the pitch is 100, then the variation range is 80-120.


Plugin Command: KoTCDataPoolLootDropRoll TABLENAME
Plugin Command: KoTCDataPoolLootDropRoll TABLENAME EVENTID
Plugin Command: KoTCDataPoolLootDropRoll TABLENAME SCREENX SCREENY

Script Call: KoTCDataPoolLootDropRoll(TABLENAME);
Script Call: KoTCDataPoolLootDropRoll(TABLENAME, EVENTID);
Script Call: KoTCDataPoolLootDropRoll(TABLENAME, SCREENX, SCREENY);

Triggers a drop roll straight from a particular drop table.

Required
TABLENAME : Name of the drop table you wish to trigger a drop from.

Optional
EVENTID : Set to the ID of the event you wish the visual drop to start from.

SCREENX / SCREENY : Set the display X and Y coordinates you wish to start the drop from.

Plugin Command: KoTCLevelScalingLootDropRoll
Plugin Command: KoTCLevelScalingLootDropRoll EVENTID
Plugin Command: KoTCLevelScalingLootDropRoll SCREENX SCREENY

Script Call: KoTCLevelScalingLootDropRoll();
Script Call: KoTCLevelScalingLootDropRoll(EVENTID);
Script Call: KoTCLevelScalingLootDropRoll(SCREENX, SCREENY);

Triggers a level scaling loot drop based on your tables configurations.
You can configure the minimum and maximum level of each table, if the average party level is within the range, then it will be part of the drop roll.

Optional
EVENTID : Set to the ID of the event you wish the visual drop to start from.

SCREENX / SCREENY : Set the display X and Y coordinates you wish to start the drop from.

Plugin Command: KoTCTieredPoolLootDropRoll TIERNAME
Plugin Command: KoTCTieredPoolLootDropRoll TIERNAME EVENTID
Plugin Command: KoTCTieredPoolLootDropRoll TIERNAME SCREENX SCREENY

Script Call: KoTCTieredPoolLootDropRoll(TIERNAME);
Script Call: KoTCTieredPoolLootDropRoll(TIERNAME, EVENTID);
Script Call: KoTCTieredPoolLootDropRoll(TIERNAME, SCREENX, SCREENY);

Triggers a drop roll of the given tier, rolling every table that has the tier set as an availiable loot tier.

Required

TIERNAME : Name of the Tier you wish to trigger a drop from.
Case sensitive.

Optional
EVENTID : Set to the ID of the event you wish the visual drop to start from.

SCREENX / SCREENY : Set the display X and Y coordinates you wish to start the drop from.


--- Yanfly Item Discard Only ---

These notes are for if you wish to use Item Discard to drop items on the map for picking up later on. With these notes you can determine the audio and display scale of such items. If such an item were picked up previously before being discarded, this will override the original pickup values.

 
<KoTC Display Scale: SCALE> Example: 1 is 100%, 0.5 is 50%, 1.5 is 150%, 2 is 200%
<KoTC Pickup Audio: AUDIO> Name of audio without extension. Example: Damage1
<KoTC Pickup Audio Pitch: NUMBER> Pitch of audio to play.
<KoTC Pickup Audio Volume: NUMBER> Volume of audio to play. 
<KoTC Pickup Audio Pitch Variance: NUMBER>
Variance of the pitch.
Example: if this is 20, and pitch is 100, pitch will vary from 80 to 120.

<KoTC Common Event: COMMONEVENTID>
ID of common event you wish to run whenever this particular item
is picked up. If set to 0 or not included, is disabled.

Change Log:
V1.07 Fixed many bugs.
V1.06 Fixed Audio issues and a few other bugs.
V1.05 Added ability to run common event on item pickup. More Bug Fixes. Fixed documentation Typos.
V.1.04 Bug Fixes, more Control over Discarded/Dropped Items
V1 Released

Terms of Usage: Paid to use for commercial and non commercial use as long as you credit me. If you were to make a game commercially with my script id appreciate it if you messaged me about it.

Purchase

Buy Now$5.00 USD or more

In order to download this asset pack you must purchase it at or above the minimum price of $5 USD. You will get access to the following files:

KoTC Roguelike Visual Loot Drop System V1.07.rar 11 kB

Development log

Comments

Log in with itch.io to leave a comment.

Hey, I'm playing around with this plugin and can't seem to figure out, is there a way that, when I'm setting what items can drop on a map, I can set it to choose a random assortment of items instead of every one on the list? That way every time the player visits the map, there's a new set of items on it, and it's not always the same amount??

Hey! That is a good idea, there isn't currently a way to do that, but in the next update I'll be certain to allow one to enable allowing a random assortment of items to be chosen for the map, as well as allowing you to configure the magnitude of the amount of items excluded.

That would be amazing, thank you!!

(2 edits)

Hey, man! I'm sorry to bother you again, but maybe I found another little issue. When I use the new note tags that you created, they don't work. For example, if I use these note tags 

<KoTC Display Scale: SCALE> 
<KoTC Pickup Audio: AUDIO> 
<KoTC Pickup Audio Pitch: PITCH>/i)> 
<KoTC Pickup Audio Volume: VOLUME>/i)> 
<KoTC Pickup Audio Pitch Variance: (\d+)>/i)>

nothing will happen. The audio doesn't play at all. 
And also, I would like to suggest you to add some new features that I was thinking about to make this plugin even more awesome! If you could add them to the plugin, I would be extremely grateful with you because you're helping me to make a great game! :D No rush, so add them when you can!

The new features would be: 

1. Ability to immediately call a Common Event after gaining an item/weapon/armor (for example, you could create a new note tag such as <KoTC Call Common Event On Gaining: ID> where ID is the ID of the Common Event to call right after gaining the item/weapon/armor from the ground).

2. A new specific command to Drop an item/weapon/armor on to the ground like it was when clicking on Discard, so this new way when I click on the Discard command the item/weapon/armor will be litterally removed from the inventory. The Drop command will be used to drop the item/weapon/armor on to the ground and the Discard command will be used to remove the item/weapon/armor completely from the inventory like it was originally intended to work by Yanfly. Obviously, the new Drop command would work standalone just with your plugin, even without installing the Yanfly Discard plugin. And the Discard command would appear only if using also the Yanfly plugin to litterally remove that item/weapon/armor from the inventory. So, when using your plugin together with the Yanfly Discard Item plugin, they will work together, but the 2 commands will work separately for 2 different purposes. I need a feature so the player can Drop items on to the ground and also can Discard them from the inventory if he wishes to do so.

3. Fluctuating animation for item/weapon/armor on the ground. It would be nice to have a simple looped fluctuating animation when the item/weapon/armor is on the ground, instead of staying still.

Thank you in advance! Let me know if these features can be added into your plugin. They would be so awesome to have in your plugin! :D 

(1 edit)

Excuse the typos in my instructions, limited time doesn't allow me to check up much as I'd like, here's the real instructions, and I've added the ability to make a common event run when an item is picked up, both in the map loot config and in the notes, in V1.05!

<KoTC Display Scale: SCALE> Example: 1 is 100%, 0.5 is 50%, 1.5 is 150%, 2 is 200%

<KoTC Pickup Audio: AUDIO> Name of audio without extension. Example: Damage1

<KoTC Pickup Audio Pitch: NUMBER> Pitch of audio to play.
<KoTC Pickup Audio Volume: NUMBER> Volume of audio to play. 

<KoTC Pickup Audio Pitch Variance: NUMBER>
Variance of the pitch.
Example: if this is 20, and pitch is 100, pitch will vary from 80 to 120.

<KoTC Common Event: COMMONEVENTID> ID of common event you wish to run whenever this particular item is picked up. If set to 0 or not included, is disabled.

I can do 2 and 3 too, I'll let you know when I add those features in as well. :)

Wow! Thank you SO MUCH! I'm so grateful with you! :D
The Common Event feature works as intended and it's super awesome! I'll wait for the other features that I suggested. 

However, the little issue with the other note tags is still there. The audio doesn't play or if it is played, it's like a strange low sound that lasts less than 1 second.

(1 edit)

Oops, maybe I found another bug. O_O 
It's the first time I'm using this plugin command

KoTCDataPoolLootDropRoll TABLENAME EVENTID

and it does nothing. The game doesn't crash, but if I open the console, it shows this error:

Uncaught SyntaxError: Unexpected end of JSON input

    at JSON.parse (<anonymous>)

    at KoTC Roguelike Loot Drop System.js:700

    at Array.forEach (<anonymous>)

    at KoTC Roguelike Loot Drop System.js:693

    at KoTC Roguelike Loot Drop System.js:799

EDIT: Ok, the game just crashed. XD I used the script call

KoTCDataPoolLootDropRoll(TABLENAME, EVENTID);

and the game crashed. Here's the console log: 

rpg_managers.js:1949 ReferenceError: Boom is not defined

    at eval (eval at Game_Interpreter.command355 (rpg_objects.js:10500), <anonymous>:1:26)

    at Game_Interpreter.command355 (rpg_objects.js:10500)

    at Game_Interpreter.executeCommand (rpg_objects.js:8930)

    at Game_Interpreter.update (rpg_objects.js:8838)

    at Game_Map.updateInterpreter (rpg_objects.js:6115)

    at Game_Map.update (rpg_objects.js:6022)

    at Scene_Map.updateMain (rpg_scenes.js:608)

    at Scene_Map.updateMainMultiply (rpg_scenes.js:600)

    at Scene_Map.update (rpg_scenes.js:589)

    at Function.SceneManager.updateScene (rpg_managers.js:2024)

SceneManager.catchException @ rpg_managers.js:1949

And also this log: 

Uncaught SyntaxError: Unexpected end of JSON input

    at JSON.parse (<anonymous>)

    at KoTC Roguelike Loot Drop System.js:700

    at Array.forEach (<anonymous>)

    at KoTC Roguelike Loot Drop System.js:693

    at KoTC Roguelike Loot Drop System.js:799

Hello again! I believe I've resolved most the crash issues if not all of them, and possibly some other ones, as usual let me know if things give you trouble, the version is 1.06  Once again I appreciate your help in hunting down issues, I wish my testing revealed these as quickly as yours does! Hope you have a merry Christmas!

And KoTCDataPoolLootDropRoll should work now as well (:

I'll be sure to separate the discard command and the drop command in the next update.

(1 edit)

Thanks for the reply, but the bugs are still there and now there is one more issue... T_T 
The game crashes if I use this plugin command 

KoTCDataPoolLootDropRoll TABLENAME EVENTID

Here's the console log: 

Uncaught SyntaxError: Unexpected end of JSON input

    at JSON.parse (<anonymous>)

    at KoTC Roguelike Loot Drop System.js:700

    at Array.forEach (<anonymous>)

    at KoTC Roguelike Loot Drop System.js:693

    at KoTC Roguelike Loot Drop System.js:799

And this:

rpg_managers.js:1949 ReferenceError: boom is not defined

    at eval (eval at Game_Interpreter.command355 (rpg_objects.js:10500), <anonymous>:1:26)

    at Game_Interpreter.command355 (rpg_objects.js:10500)

    at Game_Interpreter.executeCommand (rpg_objects.js:8930)

    at Game_Interpreter.update (rpg_objects.js:8838)

    at Game_Map.updateInterpreter (rpg_objects.js:6115)

    at Game_Map.update (rpg_objects.js:6022)

    at Scene_Map.updateMain (rpg_scenes.js:608)

    at Scene_Map.updateMainMultiply (rpg_scenes.js:600)

    at Scene_Map.update (rpg_scenes.js:589)

    at Function.SceneManager.updateScene (rpg_managers.js:2024)

SceneManager.catchException @ rpg_managers.js:1949

Also, when discarding an item, that item won't be dropped anymore on to the ground. That's a new bug. O_O So, I can't even tell if the audio plays because I can't pickup anything. XD

I'm sorry, but at this point I don't know if the other plugin commands and script calls will work because there are already tons of bugs and I haven't tested yet all the features of this plugin, so who knows that if using the other features, will they work...?

Anyway, I hope you're having a merry Christmas, too! :D

Hi! I bought your plugin and I was testing it. At first it seemed to work, but I noticed that the game crashes if I open the menu and then I close it. Here's the console log: 

rpg_managers.js:1949 TypeError: Cannot read property '_tilemap' of undefined

    at Spriteset_Base.KoTCSpriteAlias.updateLootPositions (KoTC Roguelike Loot Drop System.js:903)

    at Spriteset_Map.KoTCSpriteAlias.update (KoTC Roguelike Loot Drop System.js:913)

    at Spriteset_Map.Spriteset_Base.initialize (rpg_sprites.js:2131)

    at Spriteset_Map.initialize (rpg_sprites.js:2261)

    at new Spriteset_Map (rpg_sprites.js:2254)

    at Scene_Map.createSpriteset (rpg_scenes.js:734)

    at Scene_Map.createSpriteset (SRD_CameraCore.js:586)

    at Scene_Map.createDisplayObjects (rpg_scenes.js:727)

    at Scene_Map.createDisplayObjects (KoTC Roguelike Loot Drop System.js:518)

    at Scene_Map.createDisplayObjects (KoTC Roguelike Loot Drop System.js:1272)

SceneManager.catchException @ rpg_managers.js:1949

---------

I thought the problem was caused by SRD Camera Core plugin and SRD Smooth Camera plugin, but the crash still occurs if I turn those off. Here's the log with those plugins turned off: 

rpg_managers.js:1949 TypeError: Cannot read property '_tilemap' of undefined

    at Spriteset_Base.KoTCSpriteAlias.updateLootPositions (KoTC Roguelike Loot Drop System.js:903)

    at Spriteset_Map.KoTCSpriteAlias.update (KoTC Roguelike Loot Drop System.js:913)

    at Spriteset_Map.Spriteset_Base.initialize (rpg_sprites.js:2131)

    at Spriteset_Map.initialize (rpg_sprites.js:2261)

    at new Spriteset_Map (rpg_sprites.js:2254)

    at Scene_Map.createSpriteset (rpg_scenes.js:734)

    at Scene_Map.createDisplayObjects (rpg_scenes.js:727)

    at Scene_Map.createDisplayObjects (KoTC Roguelike Loot Drop System.js:518)

    at Scene_Map.createDisplayObjects (KoTC Roguelike Loot Drop System.js:1272)

    at Scene_Map.onMapLoaded (rpg_scenes.js:571)

SceneManager.catchException @ rpg_managers.js:1949

(1 edit)

Sorry for another message, but I noticed other weird things. When your plugin is ON, the game starts as usual, but the player with his followers start to blink/flash until I move the player away for at least 2 or 3 tiles. Then they don't blink anymore, but they start again to blink if an item drops on to the same tile where is the player or where are the followers.
I also encountered another crash. After installing Yanfly Item Core and Yanfly Item Picture Image, the game crashes if I discard an item that has a picture image instead of an icon. Here's the console log: 

rpg_managers.js:1949 TypeError: Cannot read property 'slice' of undefined

    at KoTCAddMapLoot (KoTC Roguelike Loot Drop System.js:1030)

    at Scene_Item.onActionDiscard (KoTC Roguelike Loot Drop System.js:785)

    at Window_ItemActionCommand.Window_Selectable.callHandler (rpg_windows.js:902)

    at Window_ItemActionCommand.Window_Command.callOkHandler (rpg_windows.js:1426)

    at Window_ItemActionCommand.Window_Selectable.processOk (rpg_windows.js:1156)

    at Window_ItemActionCommand.Window_Selectable.onTouch (rpg_windows.js:1086)

    at Window_ItemActionCommand.Window_Selectable.processTouch (rpg_windows.js:1054)

    at Window_ItemActionCommand.Window_Selectable.update (rpg_windows.js:986)

    at Window_ItemActionCommand.update (YEP_ItemCore.js:2032)

    at Window_ItemActionCommand.update (YEP_X_ItemDiscard.js:239)

SceneManager.catchException @ rpg_managers.js:1949

My previous reply was for the previous message! Don't be sorry, thanks again for the error report, ill look into it!

Thanks! I just tested v1.01 and the game doesn't crash anymore if I open the menu and then I close it. Now waiting for the other fixes! :D

You are welcome! I believe I have resolved the discard item crash issue in 1.02, give it a try and let me know what happens.
I've not been able to re create the flickering yet, but I will test more and try to figure that out!

(2 edits)

Well, I just tested v1.02 and the game still crashes when I try to discard an item that has a picture image (and also the flickering is still there). Here's the new console log: 

rpg_managers.js:1949 TypeError: Cannot read property 'length' of undefined

    at KoTCAddMapLoot (KoTC Roguelike Loot Drop System.js:1033)

    at Scene_Item.onActionDiscard (KoTC Roguelike Loot Drop System.js:785)

    at Window_ItemActionCommand.Window_Selectable.callHandler (rpg_windows.js:902)

    at Window_ItemActionCommand.Window_Command.callOkHandler (rpg_windows.js:1426)

    at Window_ItemActionCommand.Window_Selectable.processOk (rpg_windows.js:1156)

    at Window_ItemActionCommand.Window_Selectable.onTouch (rpg_windows.js:1086)

    at Window_ItemActionCommand.Window_Selectable.processTouch (rpg_windows.js:1054)

    at Window_ItemActionCommand.Window_Selectable.update (rpg_windows.js:986)

    at Window_ItemActionCommand.update (YEP_ItemCore.js:2032)

    at Window_ItemActionCommand.update (YEP_X_ItemDiscard.js:239)

SceneManager.catchException @ rpg_managers.js:1949

Hello Makeratore! I am sorry you are running into trouble, but you can rest assured that it will be resolved, I've made some minor changes that could possibly resolve your issue in V1.01, let me know what happens! And thank you for the detailed error report, really helps speed things up :)

(1 edit)

Hello! I would like to buy this plugin for RPG Maker MV, but before buying it, I need to know something. Can this plugin be used to allow the player to drop his items from his position on the ground? Kinda like in Animal Crossing in which you can drop the selected items from your inventory to the ground. And also, I would like to know if this plugin is compatible with Yanfly Item plugins, such as Yanfly Item Core, Yanfly Item Discard, Yanfly Independent Items, Yanfly Item Rename, Yanfly Picture Images, etc. 

Hey there Makeratore!


It wasn't compatible but it is now, I have tested with item renaming, and discarding. When you discard an item, it will be placed on a random empty tile next to the player, if an item has a picture or picture image assigned to it, it will show that as the visual loot on the map instead. And if you are using the <Text Color: ID> it will color the name of the visual loot drop upon display appropriately.

Wow! That was fast! Thank you for the reply. I'll buy your plugin for sure!