New account registration is temporarily disabled.

RAMZA'S PROFILE

I've spent a large part of my 26 years designing video games, mostly in my head. When I discovered RPG Maker 2000, I finally had a medium to put my thoughts down into, and I did.

At the time of its release, Mana Conquest was massive - even a ten hour long game was insane in those days, and the graphics kind of sucking was generally overlooked, due to the scope of the project.

Several years since, and I'm a bit embarrassed concerning how bad the first game really was. I've tried to fix that in the sequel, but between when I started, and now, there have been three new RPG Makers, and since they don't allow backwards compatibility, I've been stuck on RM2k3. Shameful.

I've come too far to quit now, though.
Mana Conquest: Vengeance
The second game in the Mana Conquest Trilogy

Search

Filter

[DynRPG] Store Item, Skill & Condition ID in Battle

Alright, now that I've muddled my way around your ATB plugin enough to get it working, it seems like I can definitively say that attack used by hero1 is not lost when hero2 uses a skill on the very next turn. It just seems to delay processing that use of the skill until the following turn.

This means no lost skill uses, except if a skill is used to finish the last enemy as the last turn in the battle. The thing about this is that the last ability is still saved, even though the common event has no chance to play, meaning that a common event can still be called after the battle to commit that last value to memory.

It's still a bit iffy on how it decides to work though. I've tracked it where two heroes get their turns at the same time, and instead of each skill getting one use point, the second hero to move gets 2 use points. For the most part, this is good enough to use though.

Thanks for hearing me out. And for making awesome plugins. I apologize for asking a bunch of questions and basically begging you for stuff. What you're doing is probably a lot more awesome than you think it is :)

PepsiOtaku's DynRPG Plugin Emporium!

Also, it seems like the default value from the ini is not being set to the proper variables 4001 and 4015. If I put a turn 0 event at the beginning to set those variables to what I set them to in the ini, everything is good, otherwise the default value is 0, which causes only the default atb calculations, which is why we're not seeing it work in test battles or during the first battle of the game, I think.

PepsiOtaku's DynRPG Plugin Emporium!

I meant that I set
; Default multiplier values

DefaultHeroSpeed=3
DefaultMonsterSpeed=3
to be -2 to see if I could observe the plugin doing anything to my battle speed. I wasn't trying to make the system work that way, I was just trying to make it do something that I could see happening.

As I understand it, having a negative value was supposed to make the bars move backwards, as the negation of the formula would subtract from the atb value. I was unable to observe this happening, even after verifying that the individual hero speed variables were all set to -2 as well.

As it turns out though, those values need to be set from WITHIN a battle event in order to take effect. I was setting them prior to battle and they were having no effect, even at insane high values or negative numbers.

[DynRPG] Store Item, Skill & Condition ID in Battle

Hmm. Even after doing that I still observe that an enemy or another player needs to act before the second page takes effect.

I'm trying to use this to keep track of numbers of times a hero uses a skill, and levels up the skill based on repeated usage. So far, it won't catch the last skill used if it kills the final enemy because the battle ends immediately.
The fix by using the multiple pages in the monster screen doesn't solve that problem, and it also introduces a second problem, depending on how I work the second page:

Either A - Multiple heroes would use multiple second pages, which would cause two heroes using skills with no monsters or non-skill using heroes in between to have a skill cancelling problem

or B - Multiple heroes would use the same page which would cause the skill variable to change to whatever the latest hero used, making the first guy's skill use not be recorded.

This is a longshot, but I was looking at some of the classes while trying to flop around on a quick fix for this problem and I found the following in the documentation:

enum RPG::BattleEventUpdateMode
Possible values of the mode parameter of RPG::updateBattleEvents.
Warning:I am not completely sure about the effects these modes have. Enumerator:
BEUM_BEFORE_ACTION
Used before a battler executes its action.

BEUM_AFTER_ACTION
Used after a battler executes its action.

BEUM_SWITCH_ACTIVATED
Used when a skill or an item activates a switch.

BEUM_BATTLE_START
Used to call events with start condition "Turns elapsed [0x+0]".

Is there a way using this to force the engine to look for a switch update using the BEUM_AFTER_ACTION enumerator instead of the BEUM_SWITCH_ACTIVATED one? Wouldn't this cause a switch based event page to happen instantly the same way an action based one works?

edit: or some way to change this plugin so that it updates those switches before the turn counter is incremented, to allow for the switch update check to happen right after the turn instead of right after the following turn.

[DynRPG] Store Item, Skill & Condition ID in Battle

Is there a way to have this so that it doesn't require another battler/monster to perform an action before the engine realizes the switch is on?

It seems like the update to turn the switch and set the variables when an action is done does not happen immediately after performing an action, as a trigger condition for "hero used 'skill' command" goes off before the switch is on or variable set.
While on the other hand, a trigger condition for the switch being on doesn't happen until the next turn (monster or player) has gone by, despite verifying that the switch and variable are set almost immediately after the attack was made.
This is causing a problem where if hero 1 uses a skill, and then the next turn is hero2 using a skill, the value of the first skill is lost completely, resulting in hero1 not having recorded a use of his skill. This is because the value is recorded almost immediately after the skill is used, but the game doesn't update the turn number until after the NEXT turn, and the engine doesn't seem to do a check to see if switches are on until a turn has elapsed.

turn 0 -> hero1 -> skillA -> TURN 1 -> switch on/variable set -> hero2 -> skillB -> switch on/variable set -> TURN 2 -> CHECK FOR SWITCH -> run common event

I assume there is a turn update after hero1 uses his skill, but before the switch and variable are set, I think this is causing the issue. Any advice?

PepsiOtaku's DynRPG Plugin Emporium!

Maybe the documentation was too confusing to me, or left some important steps out, but even by setting the default speedvars to a negative number in the ini I never observed a change in the way the ATB was functioning, when it should've been moving backwards at that point, if I understand what the readme is saying, anyway.

As for learning c++ and coding my own, I've been working on the same rpg maker game for 7 years or more. The gargantuan task of learning a programming language would probably take me until late 2033.

I'll see if I can't fumble around with this until I get it to actually do something.

PepsiOtaku's DynRPG Plugin Emporium!

author=AlexanderXCIII
I tried out the ATB overhaul plugin, and for some reason it doesn't seem to take effect on the first battle (it appears to use the default ATB formula), but works fine for every battle after that. Assuming that this applies only to the first battle in a new game, I could easily work around it, but I still think it's worth mentioning.

I have noticed this as well. It has the side effect of causing the plugin to not take effect during test battles. To test how tweaking the numbers affects the game I have to load up a save. Mildly annoying.

edit:

Upon further investigation, this plugin doesn't appear to be functioning at all to change the speed of the ATB system. I have successfully used the ini file to set the system to wait or active, and have observed that part is working, but with MultiplyAgility set to true or false, agility is still factored into the atb bar speed. I tried setting the add value to 1, to see if the system would crawl, with no effect. I also tried setting it to an extremely high value, 30000, to see if that would affect the battle speed - also no effect.
I tested in multiple battles, on a new game, as well as on a save game. I also attempted to set the default hero speed to a negative number, to make the atb bar go backwards, and still saw no change.

second edit:
Even after using the @init_hero_speed command to transfer the -2 speedvar value to the battlers, I still observed no change in battle speed, let alone atb bars going backwards.

third edit:
I think this plugin wasn't what I was really looking for afterall. I didn't realize that it was basically adding extra speed to the default atb bar. I was under the impression that it was just cancelling out the original equation and replacing it with the new formula. The problem I'm dealing with involves the traditional rm2k3 battle system problem - that AGI is way too powerful in battle.
I see now that this plugin was designed to combat the other problem, with the battle system basically crawling with too many battlers/monsters in battle at a given time.

It seems like I need to continue the search for an atb plugin that regulates AGI's value, rather than inflate it even more by factoring it into an extra calculation that increases the bar speed.

PepsiOtaku's DynRPG Plugin Emporium!

author=PepsiOtaku
@Ramza: That's an interesting idea. You might be able to do some of that with my plugin, now that each of the ATB values can be variable controlled.


Hmm. I'll see what I can figure out using the atb variables in your plugin.

PepsiOtaku's DynRPG Plugin Emporium!

author=PepsiOtaku
author=Skie Fortress
Corti's ATB Speed
I tried this out last night, and was kind of annoyed at how you basically had no control over it once you loaded up the game (and that it basically breaks the active/wait system). I also didn't think the ini parameters were very intuitive. I had no idea what I was changing, not to mention it was closed source, so I couldn't even find out that way.

It inspired me enough to fix my Advanced ATB 2 plugin (which I'll probably rename at this point). Here's what's new:

* Fixed all of the timing issues. The ATB bars no longer move at inappropriate times

* Now has a TRUE active/wait system. In Wait mode, nobody makes a move until you've completed your action. This also prevents any skill cancelling I believe. In active mode, the ATB bar moves when an action is being taken, but at a slower rate (75%) than it does normally

* Added a character's agility into my formula. The formula is now:

Base ATB Speed + (AddValue * Agility) * SpeedVar

This gives Agility more of an impact. You can also use turn this off and use the old formula (same thing minus agility).

AddValue is set in the ini, while SpeedVar is a multiplier set in-game. Previously, the AddValue could be pretty high (2500) but now that you have to account for agility, you need to set it to an appropriate amount (I set it to 125 since my game uses agilities between around 10-30. If you set the SpeedVar to a negative variable, the ATB bar will go backwards to 0.

* You can control the ATB bar of any battler via variable. This requires 14 variables (2 for the "Master" variables, 4 heroes and 8 monsters). I'm gonna add some kind of comment command that will let you easily change the ATB speed of a hero/monster based on a condition.

* You can add condition exceptions (like with Corti's plugin)

* You can set Active/Wait via switch (Moved from this plugin)

I'm not sure if it's possible with the current ATB system you've got set up here, or if it'd need a different modification, but here goes:

I would like a linear speed ATB system that functions as follows:
  • The AGI values for every monster/battler in the fight are compared
  • The highest AGI has his/her/its ATB bar fill at 1x speed (given your latest formula quoted agility would be 1).
  • Any monsters/battlers with an AGI of half of the highest, or lower will have their ATB bars fill at 60% of normal speed.
  • Anyone with more than 50% but less than 100% of the highest AGI value would fill at a linear variable rate based on their AGI compared to the highest.

example:
Alex's speed is 100
Duran's speed is 80
Ellie's speed is 40
slime's speed is 65

If the ATB bar takes 15 seconds to fill normally, Alex's bar will fill in 15 seconds. Anyone who has 50% or lower of the AGI of Alex will fill in 9 seconds (60% speed). The remaining speed values in between would fill at a proportional rate, with someone with a 51 speed only getting to act a fraction of a second faster than Ellie, while someone with a 99 speed would act only a fraction of a second slower than Alex. Someone with a 75 speed would act in 12 seconds. Also it'd be perfect if the starting ATB fill value at the beginning of a fight took into account the speed values somehow... Like if the starting value was the character's agility. That way people who have less than half of the highest speed still won't get their turns at the exact same moment unless they have the same agility.


I'd still like to be able to modify the speed value with a haste spell, making the target's ATB fill twice as fast, if possible, but the main thing is some regulation of how fast certain things can move. I don't want to have to limit the maximum agility value that can be used in the game, as the character's stats can be changed via player interaction - but I also don't want someone pumping agility to the point where they can act 10-15 times before the monsters get a chance.

Any chance you can help me out here?

third edit:
also, since I haven't checked it out, or been able to google it successfully, can someone share a link to that corti's ATB plugin? I wanna see if I can use it to do what I want, if possible.
new edit:
I dug up corti's ATB, and it has the same problem - if something has around 30 AGI less than another battler, the faster battler can go twice in the time it takes the slower one to get to go once.


It seems corti's ATB system isn't exactly what I want, but it does appear that I was wrong in my initial judgement of how unbalanced AGI can be in it. I shooped in a player with almost 300 AGI with the group that also contained someone with 80 agi. vs a monster with 30. The guy with 300 got two turns to the 80's every one, but he also got 6 turns to the enemies one. This sort of agility disparity shouldn't actually occur in the game though, so it's workable.

I would definitely prefer to have the balanced linear system I described above though. I might even be willing to toss a few dollars or a steam gift or something someone's way if they're willing to help me out. :)

Minor Update

Hey, thanks guys. :)