modifying RMXP script order with external application

Started by legacyblade, June 12, 2010, 12:40:02 am

Previous topic - Next topic

legacyblade

I was wondering how one would go about doing this. I've gotten back into the oblivion modding scene (it's just too great of an engine to not mod), and since I've been away a application has been developed to automatically sort any known mod. (with a report generated that will warn about possible incompatibility and tell you which scripts aren't recognized) I'm not sure how to read/write the data from the RMXP data files, or even which one the script order is stored in (i suspect either scripts or system). But if someone could give me some good advice, I'd really appreciate it. I want to end the whining about blizzard's scripts not working when the user just put them in the wrong order.

Anyone have some advice?

G_G

Well I cant do it in c#. But I can code it in ruby with wxruby a gui add on for it. I can also compile it and anyone can use it.

However it may be difficult actually editing the order because we dont know which script is which. I could do some testing some time and see where I get.

Blizzard

It's really easy. Just use a Ruby script read the scripts file and then change the order. I posted a "script exporter" some time ago, just search the Scripts section (not database).
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

G_G

I think I see. I load the scripts, read each one, and to see if its actually yours, I could check for global variables. However theres the problem with Hidden classes. I can get most of them in the manual but then theres Sprite, Bitmap, Window, Tilemap, etc.

Thats when things failed when I tried making my save editor. =\
I guess I could always try and find remakes or something just as place holders.

Blizzard

Not really. Sprite, Window, Tilemap, etc. aren't being saved (and actually can't be saved). :)

Also, Scripts.rxdata includes the script slot name in the editor and the script itself. So you simply display the script slot names to the user. :)
Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

G_G

I see what you mean. But I think LB wants something like where it automatically fixes the script order. If thats not possible, I could always link to recommended script order in the program, or make a list to the side.

I think I have some sort of layout planned. Some basic features will be allow you to shift scripts up and down. I've got a script to make today after thats done, I'll start messing around with it.

legacyblade

Well all of blizz's scripts include version number variables. So I could, in theory, check through the scripts to find those variables and thus figure out which script is which. It'd mainly serve to fix the order for blizz's scripts, then put everyone else's scripts above his. It'd also save me the trouble of having to look up the script order :P

Blizzard

Check out Daygames and our games:

King of Booze 2      King of Booze: Never Ever
Drinking Game for Android      Never have I ever for Android
Drinking Game for iOS      Never have I ever for iOS


Quote from: winkioI do not speak to bricks, either as individuals or in wall form.

Quote from: Barney StinsonWhen I get sad, I stop being sad and be awesome instead. True story.

Ryex

you should make the program load a cfg file that will tell it what scripts should go where. that way you can make it recognize more script with out having to hard code it make changes ect.
I no longer keep up with posts in the forum very well. If you have a question or comment, about my work, or in general I welcome PM's. if you make a post in one of my threads and I don't reply with in a day or two feel free to PM me and point it out to me.<br /><br />DropBox, the best free file syncing service there is.<br />

legacyblade

They don't all have version variables? D: Well I'd have to figure out some way to check what the script is (since everyone names them differently). Once I've done that, the rest should be pretty simple. I'll check out Blizz's script exporter to see how it's done.

And that's a good idea Ryexander. It'd also make updating the program a heck of a lot easier!