New account registration is temporarily disabled.

STRAK'S PROFILE

Just an indie game developer out of Alberta, Canada, building games for fun, never for profit, and always giving full effort to every project.
Bloodstained Hands
Read-on Classic RPG with an artistic approach.

Search

Filter

Screenshot Survival 20XX

Ha ha, well, yeah, not exactly a screenshot showcasing graphics or mapping, but rather the custom equip screen. I wanted to display ALL the weapon stats and modifiers, not just stat changes and the description. It's a screenshot showcasing mechanics, rather than graphics.

Screenshot Survival 20XX

Praise be to the Holy Aremen! I submit an offering!



So I got bored and made a new legendary weapon called the Holy Aremen. It scales its DMG and DEX stats to the level of the person wielding it, and is above average in general. Planning on releasing this as a promotional item only, available for like, the first week that the game is available to download. Oddly enough, with this loot system, you can have weapons that don't actually exist anywhere in the database and aren't hard-coded in at all, but if they were generated in a previous version (or in development during testing) they can be transported over using the Locker functionality present in the game. Because of that, this weapon can literally never be found in-game, but can be included in the download of the game and removed from the files later.

Sum up the worst game you ever played in a single line.

Final Fantasy Crystal Chronicles: the crystal bearers

"I've got your terrible voice acting, no co-op right... HERE!"

[RMVX ACE] Is there a way to disable use (of at least certain items) without force removing them?

Ah, gotcha. I'm not familiar with how the PS1 version works, so I'm not entirely sure what you mean, but it sounds like the functionality was a little more in depth for detailed control over certain situations. Still, I've yet to see anything that CAN'T be done in VX with enough ingenuity and practice. And anything VX can do, Ace can do better, so you've got a good platform to work with.

Either way, hope this solution works. Let me know if the script call doesn't work for some reason and I'll take a better look at the RGSS3 data structure to see what I might have missed.

[RMVX ACE] Is there a way to disable use (of at least certain items) without force removing them?

Hypothetically, yes that would work, assuming VXA has the same data structure. I looked up the RGSS3 reference manual before sending that, and from everything I can see it would work, but I can't give a 100% guarantee. It's worth trying though, and if it doesn't work you could try the branch method, which as I said before actually DOES let you check if someone is not in the party, simply by doing this:



So, if you have multiple party members, your code could look something like this:



It's maybe not as clean or efficient as the script call, but it should hypothetically be just as effective. And if you really only need to check for one party member, then you only need the one branch, not several. So you could check if all the other party members (or maybe just Justin) is NOT in the party, and only let you use the item when he IS, and items that Moltres gets during this period would be usable by putting the code in the opposite part of the branch. It also reduces the risk of potentially breaking an item in-game if something goes wrong. With the script call, you're literally changing the hard-coded item data in the database. That also means that every item you get with the same ID is also affected. So it's not a matter of "This one potion is disabled but the others aren't." It's more like, "While this code is active, every single potion found everywhere in the game for the rest of the game is disabled until I manually re-enable it."

Does that explanation about conditional branches make more sense?

[RMVX ACE] Is there a way to disable use (of at least certain items) without force removing them?

In regards to checking whether someone is NOT in the party, you could do that in a conditional branch. Simply check if the person IS in the party, and enable handling when conditions are not met. Then, in the ELSE statement of the conditional branch, execute the code you want to run if that person is NOT in the party. You can leave the first part of the branch empty if you don't want anything to happen if they ARE in the party.

There may also be a way to disable item usage temporarily in a script call, but I'd have to be at my computer to check. I'm not sure what the values are for assigning "occasion" in the database, or if the code works the same in ace as it does in VX, but if it's similar then I can write a simple code that can do what you're looking for.

EDIT: Assuming that VXA has a similar data structure to VX, you could potentially do this. Run this code in a script call when you want to disable the use of the item.

$data_items[x].occasion = 3

Where you replace "x" with the id of the item you want disabled. Then, to re-enable it, you would use this code in a script call.

$data_items[x].occasion = y

And you'd replace "x" with the id of the item, and "y" with the occasion id. For items that can be used all the time, change "y" to 0. For items that can only be used in battle, change "y" to 1. And for items that can only be used in the menu, change "y" to 2. Keep in mind, I'm speculating about VXA's data structure, but from what I can tell this would work.

There is one caveat to this, however. Because item data is not saved with file data, when you save and quit and reload, the occasion for all the items would be reset as well, nullifying the effectiveness of this solution. You COULD alter the engines File script to save item data with the file data, but doing so would involve changing the source code of the engine, and mistakes would basically destroy your game. Not worth the risk if you don't know what you're doing. However, if this sequence you're looking at is fairly short, you could simply disable saving during this period, and then you wouldn't have to worry about saving item data.

Those are the two solutions I could come up with, although I would strongly recommend simply using the conditional branch method, since script calls can be unpredictable if you don't know what you're doing, and could cause errors that can be even harder to fix. Regardless, this is just to say that yes, it's TECHNICALLY possible to disable item usage, just not very easy or practical when there are alternative methods available. Hope this helps.

I hope that the appropriate steps are taken

Only if it's 42.

[RMVX ACE] I want to trigger an event after player take a certain number of steps. How do I do that?

You apologized, which is more than most people do, so I'll help you, but please try to be more courteous to members of the community. It goes a long way to simply ask, "can you explain this a bit differently" as opposed to simply saying "you're wrong" or "you're trolling." Dismissing someone who's trying to help won't get you very far and won't help you make any friends in the community. Having said that, I understand the cynicism behind not trusting whether or not someone is genuinely trying to help, so I won't judge your response too harshly this time, but also understand that usually if someone has been with the community for a long time, they didn't get that way by disrespecting and trolling others who are just asking for help.

Regardless, this is a more visual example of what I was explaining in the first response. This was done in VX, not VX Ace, but the fundamental solution is the same and can also be done in Ace.

Step 1: Assign a variable to the current steps.


Step 2: Assign a second variable to the current steps.


Step 3: Add a value to the second variable equal to how many steps you want the player to take before the event is triggered. In this example, I used 150 steps.


Step 4: Compare these two variables in a conditional branch. If variable A is equal to or greater than variable B, execute code. This example just uses equal to, not greater than, but it should work the same.


Step 5: Execute the code you want when the steps are hit. If steps are NOT hit, make sure you set the first variable to the step count again. Set this event as a parallel process so it runs at all times on the map you're looking for.

NOTE: It's just the conditional branch that you want running in a parallel process. The first three steps should only be run once in a separate event, or on a separate page, otherwise it will just keep resetting the step counter.


Step 6 (Optional but helpful): Do what Pianotm was suggesting, and have a parallel process common event that assigns things like steps, map x, map y, etc to variables so that you can track this information all the time, and reference it anywhere and anytime you need, rather than running this code in a new event every time you need it.

[RMVX ACE] I want to trigger an event after player take a certain number of steps. How do I do that?

You know, if you took the time to actually read what we're writing (keep in mind you're talking to veterans of the platforms here), you'd see what we're talking about. But instead, you're dismissing what we're saying, not even TRYING to read it from an alternate perspective, and insulting members of the community who are genuinely trying to help. You know what, never mind. Showing you the code to solve this isn't worth the trouble. Figure it out yourself.

[RMVX ACE] I want to trigger an event after player take a certain number of steps. How do I do that?

O_O


Am I missing something, or is this not getting through? Give me an hour and I'll show you exactly what you need to do.

You're not assigning a number to steps taken. You're assigning steps taken to a variable, then adding to that VARIABLE. Does that make more sense?