BUGMENOT'S PROFILE
bugmenot
0
Search
Filter
[RM2K3] Big List of Plugins/IPS (Sticky This Please)
author=bulmabriefs144No.
Can you explain some of the stuff that I couldn't read?
I could pack all those bugfixes (including QuickPatches you didn't list) into one file (since the official 2k3 version still got about three dozen things wrong in the code, too) to simplify things.
Some of that stuff is fairly ancient and would need a (working) overhaul. Most can be made obsolete when DynRPG gets updated or whatever-the-heck-functionality is added into the RPG Maker editor in a less awkward way
edit:
I meant how this " 50'000 + Var_ID " would have been better to be moved into a <ShowPicture> "Number by Variable ID [...]" clickety thing to have it more direct and obvious without having to consult a readme.
@comments could get rid of pointer patches anyway (why yes, I'd have to bother with a source update some time to call event commands).
1kPicPatchDon't bother listing it.
2k3DirectItemEquipMenu, 2k3DirectItemEquipSkillMenuAlready covered by the DirectMenuPatch thingy.
Makes me think about those SemiDirect[xyz]Menu QuickPatches. ...and the other few hundred QuickPatches.
BattleAniPointerYou got that listed already under BattleAnimationPointer.
KillSwitchThere's an english readme where one of you found it.
Item(HPA)FixSomething about fixing a problem when that normal_skill_window_duration stuff was applied, but can't be removed from the Patch folder (because reasons).
MapInMenu?... exactly what it says. The Map as the menu background.
Hopefully that's the fix I posted (at the end of the post), because Cherry forgot not to draw the map in battle and crash the game.
[RM2K3] Big List of Plugins/IPS (Sticky This Please)
That AntiLagSwitch-thing is the predecessor of AntiLag. They do the same thing, but you should not use them both. Go with AntiLag and ignore the other one. There's no .ini stuff at all.
It's basically the difference between this
and this
Also tell the people you got your plugins from:
If they've put anything in that utilizes RPG::Image or does anything with an image's width/height/alpha/coloreffect, that they should swap some files in ..\CodeBlocks\MinGW for a moment
dyn_32bit_images.rar
and to recompile the plugin for a 32bit compatible version.
(Which won't work for 16bit anymore, 'cause RPG::Image's got a slightly different structure. I haven't thought about a solution, to not swap/unswap the files all the time, yet.)
author=bulmabriefs144No, just a Patch that had a problem fixed. It works on its own, shove it into DynPatches or apply it.
32Bit(2k3) (I can't read german, no idea. Maybe it's a fix for 32 bit resolution or something)
author=RedAkerstonThe default color palette has 16 bit-sized entries. This changes it.
First thing onmind right now is the first item on the list.. haha .. 32 bit fix for 2k3?
It's basically the difference between this
and this
Also tell the people you got your plugins from:
If they've put anything in that utilizes RPG::Image or does anything with an image's width/height/alpha/coloreffect, that they should swap some files in ..\CodeBlocks\MinGW for a moment
dyn_32bit_images.rar
and to recompile the plugin for a 32bit compatible version.
(Which won't work for 16bit anymore, 'cause RPG::Image's got a slightly different structure. I haven't thought about a solution, to not swap/unswap the files all the time, yet.)
[RM2K3] Database corrupted
If you've got shadow copies enabled, you could try to revert to an earlier version of your game's project folder.
Also, make backups (of stuff you are working on) more frequently.
Too bad that RM2k(3) doesn't make .bak backups of the .lmt and .ldb files automatically.
Curiously this only happens sometimes when the computer crashes.
Also, make backups (of stuff you are working on) more frequently.
Too bad that RM2k(3) doesn't make .bak backups of the .lmt and .ldb files automatically.
Curiously this only happens sometimes when the computer crashes.
author=riderx40Nope. All those bytes have most likely been overwritten with zeroes (opening the .ldb file in notepad++ will show a bunch of nul / null / nil if that's the case).
the database file seems to be 247 kb in size for some reason.
So is there any hope to fix this problem?
[RM2K3] Hero Moving During Message
Props to the two replies above that missed the point (one somewhat, one completely).
The ghetto solution would be having another parallel process on the same map (or common event) which runs the <Key Input Processing> commnand (no checkmark in "wait for input") (input for the 4 directional keys) (use something else than variable [0001] if you want) and on the left side of that event's editor set a Switch to allow the following to run only while the text is displayed:
And some 0.0 waits at the end, of which I don't remember how many it takes to move an event by a block with regards to the event's move speed (to prevent the move route to clutter up with too much movement).
And the event that opens the text window needs to have that "Allow events to continue..." enabled and turn the Switch (mentioned above) ON beforehand and turn it OFF after the text window is done.
Since I'm not having any of that ghetto nonsense, here's my solution:
download AllowPlayerMoveInMsg
edit:
Also, don't be like that one guy that patched his rpg maker editor. Read the readme. Or just shove the v1.08 file into the folder DynPatches if you are using DynRPG.
If you don't want the player to move: set the Hero/Player to <wait> in a <Move Event> on "repeat action" before the text window is displayed. After the text, just have an empty <Move Event> for the Hero/Player to reset the move route.
Assuming the [RM2K3] tag is correct and me not caring what version you are sporting (v1.08 comes with DynRPG)...
I would have preferred it if a proper modloader existed for v1.10+ already. But whatever.
But remember: there might be a reason why some games don't have the player move around during a text display.
The ghetto solution would be having another parallel process on the same map (or common event) which runs the <Key Input Processing> commnand (no checkmark in "wait for input") (input for the 4 directional keys) (use something else than variable [0001] if you want) and on the left side of that event's editor set a Switch to allow the following to run only while the text is displayed:
<>Key Input Processing: [0001]
<>Conditional Branch: Variable [0001] == 1
<>Set Move Route: Player, Move Down
<>
Branch End
<>Conditional Branch: Variable [0001] == 2
<>Set Move Route: Player, Move Left
<>
Branch End
<>Conditional Branch: Variable [0001] == 3
<>Set Move Route: Player, Move Right
<>
Branch End
<>Conditional Branch: Variable [0001] == 4
<>Set Move Route: Player, Move Up
<>
Branch End
<>
And the event that opens the text window needs to have that "Allow events to continue..." enabled and turn the Switch (mentioned above) ON beforehand and turn it OFF after the text window is done.
Since I'm not having any of that ghetto nonsense, here's my solution:
download AllowPlayerMoveInMsg
edit:
Also, don't be like that one guy that patched his rpg maker editor. Read the readme. Or just shove the v1.08 file into the folder DynPatches if you are using DynRPG.
If you don't want the player to move: set the Hero/Player to <wait> in a <Move Event> on "repeat action" before the text window is displayed. After the text, just have an empty <Move Event> for the Hero/Player to reset the move route.
Assuming the [RM2K3] tag is correct and me not caring what version you are sporting (v1.08 comes with DynRPG)...
I would have preferred it if a proper modloader existed for v1.10+ already. But whatever.
But remember: there might be a reason why some games don't have the player move around during a text display.
+++ DynRPG - The RM2k3 Plugin SDK +++
author=CortiYeah, it would be better to use this. Does the exact same thing even.
RPG::getSelectedMonsterIndex()
... now how do I open / extract .a files / libraries? (on Windows, 7 or 8-ish)
@front row
Try this:
download forceFrontRow
#include <DynRPG/DynRPG.h>
bool __cdecl onStartup (char *pluginName)
{
//keeps x-Pos offset in front row
*reinterpret_cast<unsigned short *>(0x4BBDF2) = 0xE990;
*reinterpret_cast<unsigned short *>(0x4B49C6) = 0x9090;
*reinterpret_cast<unsigned short *>(0x4B4C6C) = 0x9090;
return true;
}
void __cdecl onFrame (RPG::Scene scene)
{
if (scene == RPG::SCENE_BATTLE)
{
for (int i = 0; i < RPG::inventory->party.size; i = i++)
{ RPG::actors[(i)+1]->setRow(RPG::ROW_FRONT); }
}
}
+++ DynRPG - The RM2k3 Plugin SDK +++
author=AubreyTheBard... decent, I think.
DynBattleDisplay
Also, you can't really use
int getSelectedMonster() {
if (RPG::battleData->winMonTarget->choiceActive) {
return RPG::battleData->winMonTarget->currentChoice;
} else return -1;
}
You kill off choice#1 / monster#1
Now monster#2 is at choice#1
If you select choice#1, your plugin tries to draw the HUD on monster#1 (which is dead, hence nothing is shown)
If you select choice#2, your plugin shows the HUD on monster#2 (but monster#3 is actually selected)
Instead, try
int getSelectedMonster() {
if (RPG::battleData->winMonTarget->choiceActive) {
int monPartySlot;
asm volatile("call *%%esi"
: "=a" (monPartySlot)
: "S" (0x4953E4), "a" (RPG::battleData->winMonTarget)
: "cc", "memory");
return (monPartySlot +1);
//calls getMonTarget()
//Built-in RM2k3 function that returns the enemy's partySlot (0..7) selected by the cursor in target window
//monPartySlot +1 is the enemy's ID in the monster group (it includes dead/escaped/invisible enemies) not in the target menu
//works for all battle layouts (Gauge layout has the target window open off-screen)
} else return -1;
}
+++ DynRPG - The RM2k3 Plugin SDK +++
B)
That thing I mentioned a page ago?
As for A)
edit:
...
Does anyone happen to know any way to read a file header?
Nevermind. Although, I am curious about that.
That thing I mentioned a page ago?
[QuickPatches]
MP-Window(y)=4C8CDA,40010000,4C8D42,40010000
As for A)
RPG::Window *winMP;
winMP = (RPG::Window*)( reinterpret_cast<int *> (RPG::battleData->winSkill) )[36];
edit:
...
Nevermind. Although, I am curious about that.
+++ DynRPG - The RM2k3 Plugin SDK +++
I may have forgotten to add the addresses / quickpatches to the VisuMenu readme, since they are using some stuff from the InfoDisloc.ips:
Or default stuff (without using either InfoDisloc.ips or VisuMenu.ips) for whatever reason:
And these should work in either case (changes the MP-Window in the traditional battle layout):
Or enable the MP-Window in the other layouts as well:
# is an 8-digit number (e.g. #320 is 40010000 in hex) and % is a 2-digit number that only goes from -128 to +127 (e.g. %68 is 44 in hex). The # / % stuff is broken (for now) so put up with that little-endian garbage if you don't want to get your players or yourself be pissed off just because my stuff is broken by definition.
[QuickPatches]
VM:ItemMenu(Width, battle)=4C88C0,#320
VM:ItemMenu(Height, battle)=4C88C5,#80
VM:ItemMenu(y, battle)=4C88CC,#64
Or default stuff (without using either InfoDisloc.ips or VisuMenu.ips) for whatever reason:
[QuickPatches]
ItemMenu(Width, field)=4C8870,#320
ItemMenu(Height, field)=4C8876,#208
ItemMenu(y, field)=4C887D,#32
ItemMenu(Width, battle, large)=4C88C6,#320
ItemMenu(Height, battle, large)=4C88CB,%80
ItemMenu(Width, battle, small)=4C88DC,#320
ItemMenu(Height, battle, small)=4C88E1,%68
ItemMenu(y, battle, trad/alt)=4C88A0,#160
ItemMenu(y, battle, gauge)=4C88B3,#64
SkillMenu(Width, field)=4C8DCE,#320
SkillMenu(Height, field)=4C8DD3,#176
SkillMenu(y, field)=4C8DDA,#64
SkillMenu(Width, battle, large)=4C902C,#320
SkillMenu(Height, battle, large)=4C9031,%80
SkillMenu(Width, battle, small)=4C9042,#320
SkillMenu(Height, battle, small)=4C9047,%68
SkillMenu(y, battle, trad/alt)=4C9006,#160
SkillMenu(y, battle, gauge)=4C9019,#64
And these should work in either case (changes the MP-Window in the traditional battle layout):
[QuickPatches](fun fact: the MP-Window is initialized in the field menu in the traditional layout as well, but not drawn / updated)
MP-Window(Width, large)=4C8CD4,%60
MP-Window(Height, larged)=4C8CD6,%32
MP-Window(y, large)=4C8CDA,#136
MP-Window(x, large)=4C8CDF,#260
MP-Window(Width, small)=4C8D3C,%60
MP-Window(Height, small)=4C8D3E,%20
MP-Window(y, small)=4C8D42,#154
MP-Window(x, small)=4C8D47,#260
Or enable the MP-Window in the other layouts as well:
[QuickPatches]
ForceMP-Window=4C8CAF,EB04,4C94A1,9090
# is an 8-digit number (e.g. #320 is 40010000 in hex) and % is a 2-digit number that only goes from -128 to +127 (e.g. %68 is 44 in hex). The # / % stuff is broken (for now) so put up with that little-endian garbage if you don't want to get your players or yourself be pissed off just because my stuff is broken by definition.
+++ DynRPG - The RM2k3 Plugin SDK +++
author=bulmabriefs144... what?
That kinda scrunches everyone in a line to the left.
Are you using the 'loose formation'?
[QuickPatches]HexConverter
LooseFormationInc=47FAE7,803E0000
TightFormationInc=47FAF1,C05D0000
Put decimal into the right box next to "(big-endian)". Copy left box next to "(little-endian)" and put it instead of the blue digits.
... I could've sworn the # thing worked before Windows updated an hour ago. And the problem is not even tied to the dynloader.dll version or something.
+++ DynRPG - The RM2k3 Plugin SDK +++
Or fiddle around with RPG::terrains[ID]->gridInclination
You can also try to reverse the angle of inclination. Apply the dyn.20 patch, open the DynRPG.ini and add the following below [QuickPatches]:
First blue one is for back attack, 2nd = surround (left flank), 3rd = surround (right flank), 4th = normal/initiative.
edit:
This doesn't apply to autoplaced enemies.
author=raonakAnyhow, download dyn.20 if someone is gonna submit a plugin or not.
Hello, is there any way to change the position of heroes in battle?
You can also try to reverse the angle of inclination. Apply the dyn.20 patch, open the DynRPG.ini and add the following below [QuickPatches]:
RevInc=47FB33,44,47FB72,44,47FBA3,44,47FBE4,44,47FB4B,00,47FB8A,00,47FBBB,00,47FBFC,E0The blue numbers are a change of the x coordinate towards the left. 8 bit hexadecimal values. 00 -> 7F is 0 -> 127 and 80 -> FF is -128 -> -1
First blue one is for back attack, 2nd = surround (left flank), 3rd = surround (right flank), 4th = normal/initiative.
edit:
This doesn't apply to autoplaced enemies.