I'm going to move all discussion of Proud Clod/Heidegger 1.1 to this topic. This is mostly because the original topic devoted to WallMarket has begun to be flooded with Proud Clod comments. As I'm happy with WallMarket's current state (and have little to improve upon except for the minor bug fixes that still lurk within it, I will be neglecting it unless it doesn't work correctly. Therefore, Proud Clod (which will be abbreviated PrC instead of PC) will be focused on in this thread and all discussion of PrC in the WallMarket thread will likely not be acknowledged.
Proud Clod is now online and prepared for battle. All new updates to Proud Clod will come here.ProudClod 1.5.0.α_4 is loose!!
Mirror: Mediafire mirror
Updated some stuff based on some bug reports with the previous version:
Oops! Only the second enemy's stats was saving correctly. Got fixed.
Now you can import item names from your KERNEL.BIN/kernel2.bin for display in the steal/item drop/morph boxes.
Added the status effect bits to the "element modifiers" section. I'm not sure if they are all valid values, but it might be interesting to see if you could "full heal" from sadness or something. Someone try these out!
Scene Data Management:
Animations/Formations: That oddly-placed button was moved to a menu item here. functions mostly the same as before.
Dump Scene(s): This is the way to obsolete SceneReader. This can dump an individual scene for byte-wise manipulation.
Load Scene(s): Of course, Dump Scene(s) would be worthless without this function too. This will load a scene or 256 scenes in their raw format for manipulation/recompilation later.
Edit Enemy AI: [See Animations/Formations above]
Edit Enemy Stats: ProudClod now has the ability to modify enemy stats thereby making Hojo completely obsoleted.
Could be a bit buggy though. I didn't test it completely. Some things might not save correctly. Let me know if it doesn't. Model ID has been moved from the Animations/Formations window to this one.
Copy/Paste enemy: You can copy a single enemy to place in a different scene in a new place. Paste won't show up if you have an enemy copied, and you can paste multiple times. It SHOULD copy needed attacks as well. I don't remember if I got this working completely correctly either.
Sync enemy: This will search all the scenes looking for any enemy that shares a Model ID with the enemy you select. Once it finds it, it will re-write THAT enemy to be like the one in the scene you currently have selected. Handy for changing enemies in different scenes.
Requires:Microsoft .NET Framework 3.5
DirectX 9.0c (or higher?)*new* Blog
Included .dat file (ProudClod.dat). This file contains all the display characters and battle script addresses and their values. If you decide to change the character set, update this file. If this file is not present in the same directory as ProudClod.exe, then PrC will use the standard FFVII display characters. Also, disassembly will not display functions of known address values. If you discover the function of an unknown value, add it to the bottom of the file (or anywhere after the first 256 lines) in the same format as the rest of the addresses:
<4-digit hex address>|<function>
and it will show up during disassembly of the AI.
Images: (Modeled after WM and I'm too lazy to make new pics so this will do for now)
Main: (Identical in structure to the contents of WM's attack tab
, but with a few differences)
Character AI: http://img34.imageshack.us/img34/1860/charaibetter.png
Enemy Animation: http://img3.imageshack.us/img3/9191/anims.png
Raw Formation Data: http://img200.imageshack.us/img200/2137/formation.png
This program started out as an Enemy Attack editor. You could change the names of certain enemy attacks as well as their effects, strength, MP cost, element, status infliction, etc. It can still do that, but it has been since upgraded to allow you to edit the enemies' AI themselves! It is mostly modeled after my previous program WallMarket
which allows you to edit almost every byte of the KERNEL.BIN file that contains battle information relevant to the playable characters.
Several Searches have been added
- Search for Monster by name has been around for a while
- Search for Attack by Index
- Search for Attack by name
- Search for Unused Attack Indexes if you want to add a new attack
Several attack-related functions have been added
- Copy/Paste/Delete an attack between scenes or as a base for a new attack!
- Synchronize all attacks with a specific Attack ID within the entire collection of scenes (useful for things like E.Skills or if you have the same monster in multiple scenes)
- Statuses and Elements can be filled or cleared if you right click in the blank spaces between them.
AI Editing-related changes:
- Copy/Paste scripts (whole or partial) from one to another (still mostly experimental, but I think it'll work)
- Displaying strings is now easier that before. Just type the characters rather than translating to ff7 character codes (don't forget to add a hex value at the beginning if you're using code A0
- Edit window is now sizable! You can see more script if you want.
- Strings now can be edited and saved correctly *new*
- Format has changed. Only one monster at a time is displayed. Should speed loading of the form up.
- "Action camera override" are editable beside attack animation
- Enemy ID are editable
- Manipulate attacks are selectable
- Issues with renamed attacks *should* be resolved.
You can also edit the raw formation data in each scene! Much of it is already known, but there's a little bit left (escape flags).
Formation Data changes:
- Graphical Interface allows you to change anything about formation positions.
- won't load models or backgrounds yet. Not sure if I'll make it do that.
For now, you can dump six things. I'll add more if someone requests it.
- Setup Data
- Camera Data
- Formation Data
- Enemy Names with IDs
- Attack Animations per enemy per scene
- Raw attack data per scene
- List of attack names by index. They really are unique!
- Changes made to scenes (anywhere) are savable to a file that can be opened by another user in their scene using PrC!
- This includes changes made by Hojo!
Be sure to check out the addendum to opcode 93h.
I'm probably leaving out a few things and I'm sure bugs will surface, but it should be more friendly now.Controls
Q: ...the heck? Controls?! What do I need controls for?
A: Since you asked so nicely *grumble,grumble* I'll tell ya'. The new formation editor needs some explaining.
First of all, it will look like it will in the game. Well, minus the models and backgrounds. It will have cubes to represent these now. There's silver ones for the enemies' and gold ones for the characters' positions. On top of this, there's a gray "ground" that represents the battle floor. There are also axis lines along all the major axises.
Green = positive x
yellow = negative x
red = positive y
magenta = negative y (for some reason, these are reverse when it comes to coordinates)
blue = positive z
cyan = negative z
Get it? Positive = RGB; Negative = CYMK
To rotate the camera around the viewing center, click and hold down the left mouse button on the field and move it.
To rotate the center around the camera, hold shift while performing the same action.
To pan around, hold down control and the left mouse button and move the mouse.
To gain altitude, hold down Shift+Ctrl+Left mouse button and move up or down.
To save the camera position, right-click on the position label which is on top of the FFVII battle menu and tell it to save.
That's all for the movement of the camera, now we can also move the enemys.
To select an enemy, click on it's position label. When it turns blue you can hold down the right mouse button to move it around the gray field. Right-click on its label to align, center, or save its position.
That should be everything.
Keep in mind, however, that the drawing order is not true. The gold cubes will always overlay the silver ones even if the silver is closer to the camera. I'm not sure how to fix this. I'm working on it.
Also of note is that each cube is two "units" in size and there is currently no way to know that one is overlaying another. Most units are larger than 8 cubic units anyway. A Battery Cap, can "sit" on one square unit and be surrounded by others and not contact another one, but it's probably the only one that can and it's REALLY close to the others when it is. Moral: Leave some space between them.
Now it is able to edit what attacks an enemy can perform! There are two options. One will be which attack it can perform, and the second will be its animation while performing that action. Only a few actions per character are used, but play around with them. Typically, 0-2 are idle, damage, and death and from 3 on are attack animations.
Now you can find the enemy you're looking for even easier! The search button to the right of the scenes will allow you to look for the name of a monster. It is case insensitive and you just have to give it part of the name! If only one scene contains that enemy it will jump to it. Otherwise, it will give you a list of scenes it is in.
- Most information is known, but not all. If you have any information on unknown values please let me know by replying to this or PMing me. Also keep in mind that I intend to continue updating this with relevant information so this is not the final version.
- Also keep in mind that I intend to continue updating this with relevant information so this is not the final version.
zlib1.dll needs to be in the same directory as PrC or in the WINDOWS\system32 directory. If you get an error during scene.bin creation saying it can't find zlib1.dll, put it in the same directory as PrC.
- Currently does not come with a readme of any kind. Use WM's readme for opcode description until I make a PrC one.
- To delete scripts, highlight the script section ("Pre-Battle", "Main", etc) and press the Delete key on the keyboard.
- This thing is probably pretty buggy, but I didn't do a very exhaustive test of what it can and can't modify. If something doesn't work, let me know.
- For questions about animations indexes, read this thread first.