+++ DYNRPG - THE RM2K3 PLUGIN SDK +++

Posts

Though the word "Immune" will pop up if the (normally absorbed) damage is calculated as being zero (due to too high of a DEF value).

This is fine because a target that can absorb something is still Immune but to an extreme degree.

And the DamageCapper QuickPatch does not work with absorbtion being 0. If you don't remove that QuickPatch, it will do the minimum damage instead of healing 0 HP.

I was actually using -9999 for DmgCapper(min), so that shouldn't be an issue.

I am using -9999 for the DmgCapper(min) and 1 for the %12 Damage attribute minimum.

EDIT: I tested the latest update to RPS+ and it didn't actually seem to solve the absorption issue.
:facepalm:

Urgh, I forgot about negative damage. I still want absorption damage I just don't want...

author=El_WaKa
- They killed Ambrosia and Nevras can not escape by itself, I have to wait for them to kill Nevras , Nevras has 9200 hp and ghosts can only take maximum 200 hp when using dark ( but sometimes they do 0 damage ), but repeatedly decide to attack ( 0 damage) or cast lullaby (sleep) , Nevras can't hurt them, here is when I thought , this is a disaster

This happened because character 2 (Nevras) has level 99, and absurdly high defense. Monsters could still require him to take damage, just less.

I'd ideally want (1) to display healing damage, and (2) if for some reason the damage would display as 0, either display it as Miss (easier, from what I've seen) or add 1 to it. Negative damage and damage over 0 should be unaffected.

And yes, I know I'm being annoyingly picky. But I kinda just fixated on having one thing the way I want it. Justifiably, perhaps, since my games have rather massive stat and armor curve, and I want monsters to always be technically capable of killing the party (horror vs fantasy spectrum, I'm closer to light horror) short of wearing immune gear.

Thank you for being so obliging. I figure what I want will probably take a bit of work and a lot of tries to get right.

Shoobinator, does that config work?
Bulma, it sounds like your issue is less related to damage calculation and more related to your sleep spell being overpowered. Maybe limit the number of party members that can be put to sleep at once?

Oh, and I edited my last post.
I could do that too (or raise miss chance). But that's an easy fix. Anyway, this is supposed to be an OP sleep attack, because the battle is supposed to be freaking scary.

The issue he was complaining about is that party level had reached 99. Because the party had no priests, the monsters couldn't be killed (Immune to physical). But because defense was high you wouldn't even lose properly, and zero damage was taken. And because I have a bunch of hidden learned skills, and not enough slots to add Flee to Nevras's commands. As in, Nevras is locked in a battle, where he can't win (Immune), can't lose (0 damage, not 1), and can't escape (no Flee). That is what is the disaster.

Here's the thing. At level 1-30, these ghosts are very tough. Then when you overshoot them in level, I still want them useful as minions. Not dealing 0 damage with nearly every attack. Even enemies designed for lvl 80 (with nearly 800 defense), due to the fact that I have the David patch, and you can have huge stacked defense, monsters can deal no damage (invincible heroes is not what I want) or monsters if the party has weak gear can be no different from immunity. I don't want either one, unless I outright programmed them with immunity. Hero/enemy invincibility is game breaking.

Ummmm...

1 should be default, for reasons listed above, for high def.

%12 should allow you to overwrite this default. For example. I have armored enemy like Metal King Slime. I could set A to 100 to make the dealt damage if high def set to 100. It does not override Immune, Miss, or healing.

Immune does 0 damage, and uses a formula to distinguish it from high def, so there is no overlap of damage.

Miss does 0 damage, but for different reasons.

Internalize this, so we can get rid of the damage capper. It seems to cause more problems than it solves trying to limit stuff.

Negative damage. Hmmm. If attribute is 0%, deal immune. If attribute is -1% or more, deal -1 to -9999.

If we can get this to work, maybe make damage with Defense and Mighty Guard display "Mighty Guard!" and give 50% defense and added stat defense.

author=Shoobinator
EDIT: I tested the latest update to RPS[+] and it didn't actually seem to solve the absorption issue.
Let me guess: regular attack with a weapon, the attribute in question is of type physical/weapon? I missed that one. (if it's not this, don't bother downloading version something something B)
download RPS[+]


@bulmabriefs144
They are not waking up because the AttackSkill(?) has zero AtkInfluence. There's a (AtkInf)x9.09% chance of even considering that "condition cured by damage" chance.

This might be solvable with the stuff that's already there:
Skill: Attack(Ghost)
AtkInf > 0 (chance to cure sleep)
IntInf = x (damage mainly based on INT)
%3 (Reflect)
%4 (Evade)
%5 (Name)
%12 (deal minimum damage to kill the target eventually, unless the target's immune for some reason)

and:
%2GhostPierce (Pierce) [A] = 1000 (ignore DEF of the target, AtkInf has a small effect on damage if STR of the caster is low)

download DBX.ini
(Delimit attribute name length. More room to put short descriptions.)


not enough slots to add Flee
Do you have a basic SkillTracker plugin? Just set RPG::BasicAction = BA_ESCAPE, no?

Or if you did not remove the Fight|Auto|Escape window:
[QuickPatches]
BetterEscape=49502E,741B,495045,047503

Escape not allowed if "no escape allowed" and no stupid "you/the enemy already made a turn, so no escape for you". Escape not allowed if surrounded by enemies.

...an update to (**reinterpret_cast<long ***> (0x4CDD38)) [37] //EncounterType (0|1|2|3|4 = Normal|Initiative|BackAttack|Surround|Pincer)
might help if all enemies' x-Pos is left/right of everyone in the player's party (opening up an escape route)


But because defense was high you wouldn't even lose properly, and zero damage was taken
Automatic game over after x amount of turns?
'ghost made a scary face'
'you shit your pants'
'you died'
Bugmenot, I think he means differentiating between immunity, defense being higher than damage (resulting in a negative number), and damage that is actually negative due to either entering -1000 into the damage or -100% into the modifier.

That sounds good. I'll test it out when I get home. I'll also see about refitting most of my existing skills to this sorta thing (in Tales it is, but not Oracle).

I removed the Fight|Auto|Escape.

Is there a way to change Row in battle (since it's preset, and since I don't generally use it) to Run? This would likely be a different patch. I'd want some formula that compares party total AGI to monster total AGI, autoruns (restrict for the enemy pincer) if party AGI total is higher, and gives a random chance to overcome if monster total AGI is greater. Ambrosia's Flee is 100% (except when monsters have surrounded). This would allow everyone to technically run, but for Ambrosia (and Aqorm, being a thief) to EXCEL at it.

I would say 200x turns, but I have a prebuilt turn-based system, that actually spends turns, so it'd have to be turns spent by hero action.
author=bugmenot (06/22/2014)
Changes the last BattleCommand (Row) into another BattleCommand(ID)
download RowSwap

[QuickPatches]
RowSwapCommand(ID)=49606E,#1
Command_IDs can be found under Battle Layout -> Default Battle Commands -> [Set]


author=bulmabriefs144
defense being higher than damage (resulting in a negative number)
(STR/2 - DEF/4) gets set back up to zero if the result would be negative.

author=Shoobinator
Both skills and regular attacks still seem to have this absorption issue even with this most recent update.
Care to elaborate on the setup?

Are you sure you don't have any other attribute that has higher damage multipliers than the one that should get absorbed?
author=bugmenot
author=Shoobinator
EDIT: I tested the latest update to RPS[+] and it didn't actually seem to solve the absorption issue.
Let me guess: regular attack with a weapon, the attribute in question is of type physical/weapon? I missed that one. (if it's not this, don't bother downloading version something something B)
download RPS[+]


Both skills and regular attacks still seem to have this absorption issue even with this most recent update.
Wow! RPS patch is amazing bugmenot! Thanks for that plugin man!

I have two questions if you have time:

I use too you RowSwap, to change Row command in battle for command i named Tactics (use like a skills command), now the commands menu in battle is:

Attack
Skill
defend
Item
Tactics

I would like that the skills that i set as tactics not appear in the submenu of skills in battle. Is that possible?

Next question is, is posible to change Row position of heroes by a switch, because i want to make a two skills for hero to do this, sorry for my newbie english people! xDD

And thanks for your time friends!

Best regards!
I would like that the skills that i set as tactics not appear in the submenu of skills in battle. Is that possible?


Yeah, there is actually a real simple solution for that: change the skill subset of the skill on the skill's skill page to Tactics. ;)
author=Shoobinator
I would like that the skills that i set as tactics not appear in the submenu of skills in battle. Is that possible?
Yeah, there is actually a real simple solution for that: change the skill subset of the skill on the skill's skill page to Tactics. ;)


I do that, but if i chose skill command appears the skills of the tactics command too.

Thx for answer!
author=Beleren
author=Shoobinator
I would like that the skills that i set as tactics not appear in the submenu of skills in battle. Is that possible?
Yeah, there is actually a real simple solution for that: change the skill subset of the skill on the skill's skill page to Tactics. ;)
I do that, but if i chose skill command appears the skills of the tactics command too.

Thx for answer!


Make sure in the "Battle Layout" tab of the database that you set "Tactics" to the archetype "Skill Subset". If the archetype is "Skill", it will show all skills that character knows.
author=bugmenot
author=bugmenot (06/22/2014)
Changes the last BattleCommand (Row) into another BattleCommand(ID)
download RowSwap

[QuickPatches]
RowSwapCommand(ID)=49606E,#1
Command_IDs can be found under Battle Layout -> Default Battle Commands -> [Set]
author=bulmabriefs144
defense being higher than damage (resulting in a negative number)
(STR/2 - DEF/4) gets set back up to zero if the result would be negative.

author=Shoobinator
Both skills and regular attacks still seem to have this absorption issue even with this most recent update.
Care to elaborate on the setup?

Are you sure you don't have any other attribute that has higher damage multipliers than the one that should get absorbed?
author=bugmenot
author=bugmenot (06/22/2014)
Changes the last BattleCommand (Row) into another BattleCommand(ID)
download RowSwap

[QuickPatches]
RowSwapCommand(ID)=49606E,#1
Command_IDs can be found under Battle Layout -> Default Battle Commands -> [Set]

So, you mean #1 is fight will trigger fight? Wow, that's cool. Renames and everything.
author=Shoobinator
author=Beleren
author=Shoobinator
I would like that the skills that i set as tactics not appear in the submenu of skills in battle. Is that possible?
Yeah, there is actually a real simple solution for that: change the skill subset of the skill on the skill's skill page to Tactics. ;)
I do that, but if i chose skill command appears the skills of the tactics command too.

Thx for answer!
Make sure in the "Battle Layout" tab of the database that you set "Tactics" to the archetype "Skill Subset". If the archetype is "Skill", it will show all skills that character knows.


Thanks for you advice! i fix the problem change skills from "normal"!

Thanks!
author=Shoobinator
So, you mean #1 is fight will trigger fight?

http://www.multimediaxis.de/threads/104116-Programmwunsch-und-erstellungsthread-2?p=3181839&viewfull=1#post3181839

Yes! If my first command was $AFight it will show $AFight, and behave as $AFight. You can even code If (Char1) uses $AFight...

Update:

Shoobinator, just remove the damage capper. I had it on, and got screwy damage (like 241 for a monster with 10 ATK & skill 10 damage/Influence 1, versus 400+ def from party). I removed it and tested versus normal, 0% damage, and negative %.
I got 5-15 damage, Immune, and negative 60 (it was about neg 300%).


That's all I have. And that seems to work.

This seems finished. Moving on.

We could in theory keep doing stuff. Like maybe try to replicate some monster abilities, and do other stuff.

%13 Nonlethal damage (you've seen bosses where they deal 9998 damage if you have 9999. There is already this, but I'd like to do it this way so you can have a simple unlosable battle)
%14 Percent (1-100 of current hp, you can make a simple attack that deals 9999. Combine this with nonlethal if you want to deal 9998 damage, and miss if the target has 1 hp)
%15 Multiple attack (1-8. Does a bunch of recasts on the spell in question)
%16 Multiple attack - Variable (Uses variable instead of 1-8, allowing you to control it in battle)
%17 Charge up (monster skips turns and casts the spell later)
%18 Sacrifice (caster loses all remaining hp and adds it to damage)
%19 Auto-Crit (the attack always deals critical damage. Good for boss battles, or combining with the other stuff)
%20 Karma? (You'd need some way to store each party member kill, but this would be nice. A is a multiplier, so if you killed 99 monsters and A is 10 that's 990)
I'm quite curious, is it possible to make a plugin that lets you put in custom values for the level up curve instead of using the default 2k3 EXP Level Up Curve which is terrible and I'm using because I don't have too much choice in the matter? I originally was going to make my EXP level ups be similar to FFV/FFVII, but couldn't do it due to this dumb table. I'm going to assume it's a no-go though...but thought I'd ask.
author=Xenomic
I'm going to assume it's a no-go though...
Depends on what you have in mind.

Static EXP curve dictated by variables. Easy.
EXP Curve from a plugin / updating approprietly. Somewhat doable.
Custom stat progression (probably not logged on down-leveling). Just slightly impossible to not mess up.


author=bulmabriefs144
You can even code If (Char1) uses $AFight...
'twas talking about [row] which can not be set as a battle event trigger, thus not be detected in vanilla 2k3 (DynRPG plugins can detect it, though. Issues with battle events being out of sequence may occur.).

author=bulmabriefs144
I'd want some formula that compares party total AGI to monster total AGI [...]

You can set the FleeChance with
bool onComment ([...])
{
int newFleeChance;
[...]
//calculations and stuff changing newFleeChance
[...]
( **reinterpret_cast<long ***> (0x4CDD38) ) [22] = newFleeChance;
return true;
}
Set newFleeChance to 101 if you want to guarantee an escape.

FleeChance by default is
50 + (100 - 100x(AverageEnemyPartyAGI / AverageHeroPartyAGI))
and increases by 10% every time the escape command fails, and does not update when the faster enemies are removed from the fight.
Just don't make something worse.


That "Escape" in the Fight|Auto|Escape window is misleading if you think it's the same as in RM2k.
It's 100%, though only usable if escape = allowed, nothing made a turn yet and if you have an advantage over the enemy (initiative/surround/firstStrike).


What DynRPG's missing is a (fast) compiler that converts comments with certain prefixes and runs them like plugins (without access to callbacks, I guess. Unless registered somewhere for later re-accessing).
So stuff like setting (0x4CDD38)[22] does not eat up a whole plugin.
(Or to prevent creating a giant plugin that grants access to... (sort of) a lot of stuff)

Something like RMVXP's script event command. Just less retarded. (execution- and planning-wise)
Well, the idea was I was going to originally use Final Fantasy V's/VII's EXP curve for leveling up and adjust my monster's EXP drops and whatnot according to that so that it's well...more fairer and not so easy to super grind like it is right now due to the default 2k3 EXP curve. So it's pretty much static for every character for every level up. So if a character needed 1500 EXP to level up from level 14 to level 15, EVERY character would need that much from level 14 to level 15. It's just a way to try and avoid having level ups from being too common (trying to find a way to make levels more meaningful for my game. This is just the first step seeing as I still need to figure out how to make Attack, Defense, and Magic worth a darn...).
Use KazString. It has the ability to input info at a matrix grid. Meaning, you can in theory program each character to have their own stored amount, and compare that number to current exp. It would take a crapload of programming. But you could manage thousands of numbers with about 11 variables (assuming 10 characters, and an exp var).
Well, that or you have a patch that ignores levelup by exp, and allows you to set level by variable. This makes you set If ReimuExp is equal to 1200, set level to 6 and stats go equal to level. Would there be a way to simply control levelling manually?